电子产业
数字化服务平台

扫码下载
手机洽洽

  • 微信小程序

    让找料更便捷

  • 扫码下载手机洽洽

    随时找料

    即刻洽谈

    点击下载PC版
  • 华强电子网公众号

    电子元器件

    采购信息平台

  • 华强电子网移动端

    生意随身带

    随时随地找货

  • 华强商城公众号

    一站式电子元器件

    采购平台

  • 芯八哥公众号

    半导体行业观察第一站

EM78P156 语法介绍(5)

来源:-- 作者:-- 浏览:644

标签:

摘要: DJZA Decrement R, Place in the A register, Skip if 0 語 法 DJZA R 編 碼 0 0101 10rr rrrrr 操作內容 R - 1 --> A, skip if 0 受影響的旗標 無 說 明 將所指定R 暫存器的內含值減1﹐並將結果存於A 暫存 器上﹔如果結果為0﹐則下一個指令將

DJZA Decrement R, Place in the A register, Skip if 0

語 法 DJZA R

編 碼 0 0101 10rr rrrrr

操作內容 R - 1 --> A, skip if 0

受影響的旗標 無

說 明 將所指定R 暫存器的內含值減1﹐並將結果存於A 暫存

 

器上﹔如果結果為0﹐則下一個指令將被跳過。

舉例說明 HERE:


DJZA 0x9

CONT:

MOV A,0x10

SKIP:

ADD A,@10

在執行DJZA 指令之前

PC = address HERE

在執行DJZA 指令之後

A=R9-1

if A = 0, PC = address SKIP

if A ≠ 0, PC = address CONT


DJZ Decrement R, Skip if 0

語 法 DJZ R

編 碼 0 0101 11rr rrrrr

操作內容 R - 1 --> R, skip if 0

受影響的旗標 無

說 明 將所指定R 暫存器的內含值減1﹐並將結果存回R 暫存

器上﹔如果結果為0﹐則下一個指令將被跳過。

舉例說明 MOV A,@100

MOV 0x10,A

LOOP:

DJZ 0x10 ;暫存器R10 遞減﹐ 若結果不等於

;0 , 執行JMP 指令﹐若結果等於0﹐

;JMP指令不執行

JMP LOOP


RRCA Rotate Right R through Carry, Place in the A register

語 法 RRCA R

編 碼 0 0110 00rr rrrrr

操作內容 R(n) --> A(n-1), R(0) --> C, C --> A(7)

受影響的旗標 C﹔進位旗標被影響

說 明 R 暫存器的內含值又移1-bit﹐右移時包含C(進位旗

標) ﹐如下圖﹐並將結果存於A 暫存器。

C REGISTER R

舉例說明 將指定的暫存器放向右移1 位﹐並將結果由port6 輸出。

BIT_BUF == 0x10

RRCA BIT_BUF

MOV 0x6,A


RRC Rotate Right R through Carry

語 法 RRC R

編 碼 0 0110 01rr rrrrr

操作內容 R(n) --> R(n-1), R(0) --> C, C --> R(7)

受影響的旗標 C﹔進位旗標

說 明 所指定的暫存器的內容﹐連帶著進為旗標接向右移1

位﹐如下圖。

C REGISTER R

舉例說明 MOV A,@0x0f

CLR 0x3,0 ;clear C flag

MOV 0x10,A ;R10 = 00001111

RRC 0x10 ;R10 = 00000111, C = 1


RLCA Rotate Left R through Carry, Place in the A register

語 法 RLCA R

編 碼 0 0110 10rr rrrrr

操作內容 R(n) --> A(n+1), R(7) --> C, C --> A(0)

受影響的旗標 C﹔進位旗標

說 明 將所指定的暫存器的內容﹐連同進位旗標一起向左移

1 位﹐並將結果存於A 暫存器。

C REGISTER R

舉例說明 將指定的暫存器放向左移1 位﹐並將結果由port6 輸出。

BIT_BUF == 0x10

RLCA BIT_BUF

MOV 0x6,A


RLC Rotate Left R through Carry

語 法 RLCA R

編 碼 0 0110 11rr rrrrr

操作內容 R(n) --> R(n+1), R(7) --> C, C --> R(0)

受影響的旗標 C﹔進位旗標

說 明 將所指定的暫存器的內容﹐連同進位旗標向左移1 個位

原﹐結果存在原先的暫存器。

C REGISTER R

舉例說明 將0X10 暫存器的內容向左移1 個位元﹐進位旗標並不

包含在內。

REGISTER 0x10

RLCA 0x10 ﹔暫存器的bit7 移到進位旗標

﹔中。並將結果存於A 暫存器

RLC 0x10 ﹔將0x10 暫存器的值向左移1

﹔位﹐此時執行的結果如上圖。


 

型号 厂商 价格
EPCOS 爱普科斯 /
STM32F103RCT6 ST ¥461.23
STM32F103C8T6 ST ¥84
STM32F103VET6 ST ¥426.57
STM32F103RET6 ST ¥780.82
STM8S003F3P6 ST ¥10.62
STM32F103VCT6 ST ¥275.84
STM32F103CBT6 ST ¥130.66
STM32F030C8T6 ST ¥18.11
N76E003AT20 NUVOTON ¥9.67