求汇编语言指令,

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 16:46:52
求汇编语言指令,

求汇编语言指令,
求汇编语言指令,

求汇编语言指令,
051指令集
资料转移指令
MOV 移动
MOVC 程式记忆体移动
MOVX 外部RAM和扩展I/O口与累加器A的数据传送指令
PUSH 放入堆叠
POP 由堆叠取回
XCH 8位元交换
XCHD 低4位元交换
SWAP 高低4位元交换
算术指令
ADD 两数相加
ADDC 两数相加再加C
SUBB 两数相减再减C
INC 加一指令
DEC 减一指令
MUL (MUL AB乘法指令仅此一条)相乘指令,所得的16位二进制数低8位存累加器A高8位存B
DIV (DIV AB 除法指令仅此一条)相除指令,所得商存A,余数存B
DA (DA A 只此一条指令)调整为十进数
逻辑指令
ANL做AND(逻辑与)运算
ORL做OR(逻辑或)运算
XRL 做(逻辑异或)运算
CLR 清除为0
CPL 取反指令
RL 不带进位左环移
RLC 带进位左环移
RR 不带进位右环移
RRC 带进位右环移
控制转移类指令
JC C=1时跳
JNC C=0时跳
JB 位元=1时跳
JNB 位元=0时跳
JBC 位元=1时跳且清除此位元
LCALL 长调用子程序
ACALL 绝对调用子程序
RET 由副程式返回
RETI 由中断副程式返回
AJMP 绝对转移
SJMP 相对转移
JMP @A+DPTR 散转,相对DPTR的间接转移
JZ A=0时跳
JNZA 0时跳
CJNE 二数比较,不相等时跳
DJNZ 减一,不等於0时跳
NOP 空操作
位变量指令
SETB 设定为1
ORG 程序开始,规定程序的起始地址
END 程序结束
EQU 等值指令(先赋值后使用)例:SUM EQU 30H
DB 定义字节指令
DW 定义字内容
DS 定义保留一定的存贮单元数目
BIT 位地址符号指令 例:SAM BIT P1.0
RET 子程序返回指令
RETI 中断子程序返回指令
$ 本条指令地址
算术运算指令
指令 说明 周期
ADD A,Rn A←A+Rn 12
ADD A,direct A←A+direct 12
ADD A,@Ri A←A+Ri 12
ADD A,#data A←A+data 12
ADDC A,Rn A←A+Rn+C 12
ADDC A,direct A←A+direct+C 12
ADDC A,@Ri A←A+Ri+C 12
ADDC A,#data A←A+data+C 12
SUBB A,Rn A←A-Rn-C 12
SUBB A,direct A←A-direct-C 12
SUBB A,@Ri A←A-Ri-C 12
SUBB A,#data A←A-data-C 12
INC A A←A+1 12
INC Rn Rn←Rn+1 12
INC direct direct←direct+1 12
INC @Ri @Ri←@Ri+1 12
INC DPTR DPTR←DPTR+1 12
DEC A A←A-1 12
DEC Rn Rn←Rn-1 12
DEC direct direct←direct-1 12
DEC @Ri @Ri←@Ri-1 12
MUL AB 两个无符号的8位数据相乘,其中高阶8位放入B缓存器,低阶8位则放入累积器ACC 24
DIV AB 两个无符号的8位数据相除,把ACC值除以B缓存器值,商数放回ACC,余数放在B 48
DA A 累加器作十进制调整 48
     
     
逻辑运算指令
指令 说明 周期
ANL A,Rn A←A and Rn 12
ANL A,direct A←A and direct 12
ANL A,@Ri A←A and Ri 12
ANL A,#data A←A and data 12
ANL direct,A direct←direct and A 12
ANL direct,#data direct←direct and data 24
ORL A,Rn A←A or Rn 12
ORL A,direct A←A or direct 12
ORL A,Rn A←A or Rn 12
ORL A,@Ri A←A or Ri 12
ORL A,#data A←A or data 12
ORL direct,A direct←direct or A 12
ORL direct,#data direct←direct or data 24
XRL A,Rn A←A xor Rn 12
XRL A,direct A←A xor direct 12
XRL A,@Ri A←A xor Ri 12
XRL A,#data A←A xor data 12
XRL direct,A direct←direct xor A 12
XRL direct,#data direct←direct xor data 12
CLR A 清除累加器 12
CPL A 累加器反相 12
RL A 累加器向左旋转 12
RLC A 累加器和C左旋 12
RR A 累加器向右旋转 12
RRC A 累加器和C右旋 12
SWAP A 累加器的高低四位互换 12
     
     
数据转移指令
指令 说明 周期
MOV A,Rn A←Rn 12
MOV A,direct A←direct 12
MOV A,@Ri A←Ri 12
MOV A,#data A←data 12
MOV Rn,A Rn←A 12
MOV Rn,direct Rn←direct 24
MOV Rn,#data Rn←data 12
MOV direct,A direct←A 12
MOV direct,Rn direct←Rn 24
MOV direct,direct direct←direct 24
MOV direct,@Ri direct←Ri 24
MOV direct,#data direct←data 24
MOV @Ri,A Ri←A 12
MOV @Ri,direct Ri←direct 24
MOV @Ri,#data Ri←data 12
MOV DPTR,#data 16 Ri←16bit data 24
MOVC A,@A+DPTR A←程序内存的数据 24
MOVC A,@A+PC A←程序内存的数据 24
MOVX A,@Ri A←外部RAM的数据(8bit地址) 24
MOVX A,@DPTR A←外部RAM的数据(16bit地址) 24
MOVX @Ri,A 外部的RAM(8bit)←A 24
MOVX @DPTR,A 外部的RAM(16bit)←A 24
PUSH direc 推迭区←direct 24
POP direc direct←堆栈区 24
XCH A,Rn A和Rn互换 12
XCH A,direct A和direct互换 12
XCH A,@Ri A和Ri互换 12
XCHD A,@Ri A和Ri的低四位互换 12
     
     
位运算指令
指令 说明 周期
CLR C 清除进位旗标 12
CLR bit 清除直接位 12
SETB C 设定进位旗标 12
SETB bit 设定直接位 12
CPL C 进位旗标反相 12
CPL bit 直接位反相 12
ANL C,bit C←C and bit 24
ANL C,/bit C←C and bit(反相) 24
ORL C,bit C←C or bit 24
ORL C,/bit C←C or bit(反相) 24
MOV C,bit C←bit 12
MOV bit,C bit←C 24
JC rel 若C=1跳至rel 24
JNC rel 若C=0跳至rel 24
JB bit,rel 若bit=1跳至rel 24
JNB bit,rel 若bit=0跳至rel 24
JBC bit,rel 若bit=1跳至rel,且清除此位 24
     

     
程序跳跃指令
指令 说明 周期
ACALL addr11 绝对式子程序呼叫 24
LCALL addr16 远程子程序呼叫 24
RET 从子程序返回 24
RETI 从中断子程序返回 24
AJMP addr11 绝对式跳跃 24
LJMP addr16 远程跳跃 24
SJMP rel 短程跳跃 24
JMP @A+DPTR 间接跳跃 24
JZ rel 若A=0跳至rel 24
JNZ rel 若A不等于0跳至rel 24
CJNE A,direct,rel 若A不等于direct跳至rel 24
CJNE A,#data,rel 若A不等于data跳至rel 24
CJNE Rn,#data,rel 若Rn不等于data跳至rel 24
CJNE @Ri,#data,rel 若Ri不等于data跳至rel 24
DJNZ Rn,rel Rn减1不等于0跳至rel 24
DJNZ direct,rel direct减1不等于0跳至rel 24
NOP 没动作 12
     
     
缩写符号说明
缩写符号 说明 备注
Rn 缓存器R0-R7  
direct 8bit内部数据存储器,包括  
1.内部数据存储器(00-7F)的地址
2.特殊功能缓存器(80-FF)的地址,如P0,PSW,TMOD..等
@Ri 由缓存器R0或R1所寻址的内部RAM数据  
#data 8bit常数  
#data 16 16bit常数  
addr 16 16bit的目的地址,可使跳跃指令跳跃64k  
addr 11 11bit的目的地址,可使跳跃指令跳跃2k  
rel 具正负号的8位地址偏移量,用于相对地址的跳跃  
bit 1个bit:只所有可以位寻址的位.(如PSW.7为CY旗号)  
A 累加器(累积器)  
C或CY 进位旗号  
AC 辅助进位旗号  
Bb 指定位B0-B7  
D 半字节(4Bit)助忆符号  
F0 旗号0  
I 中断  
PC 程序计数器  
P0 I/O port 0  
P1 I/O port 1  
P2 I/O port 2  
P3 I/O port 3  
PSW 程序状态字组(类似于旗号缓存器)  
SP 堆栈指针缓存器  
B 缓存器B  
DPTR 数据指针缓存器  
X 外部滋要内存的助忆符号  
@ 间接地址符号  
$ 程序计数迄目前的值  
reg 缓存器
8051 INSTRUCTION SET
1.Arithmetic operations:
Mnemonic    Byte  Cyc
ADD A,@Ri   1    1
ADD A,Rn    1     1
ADD A,direct   2     1
ADD A,#data   2     1
ADDC A,@Ri   1    1
ADDC A,Rn    1    1
ADDC A,direct   2    1
ADDC A,#data   2    1
SUBB A,@Ri    1    1
SUBB A,Rn    1    1
SUBB A,direct   2     1
SUBB A,#data   2    1
INC A      1    1
INC @Ri     1    1
INC Rn      1    1
INC DPTR     1    1
INC direct    2   1
INC direct    2   1
DEC A      1   1
DEC @Ri     1   1
DEC Rn     1   1
DEC direct    2   1
MUL AB     1    4
DIV AB     1   4
DA A      1    1
2.Logical opreations:
ANL A,@Ri   1 1
XRL A,@Ri   1 1
ANL A,Rn   1 1
XRL A,Rn   1 1
ANL A,direct 2 1
XRL A,direct 2 1
ANL A,#data 2 1
XRL A,#data 2 1
ANL direct,A 2 1
XRL direct,A 2 1
ANL direct,#data 3 2
XRL direct,#data 3 2
ORL A,@Ri 1 1
CLR A 1 1
ORL A,Rn 1 1
CPL A 1 1
ORL A,direct 2 1
RL A 1 1
ORL A,#data 2 1
RLC A 1 1
ORL direct,A 2 1
RR A 1 1
ORL direct,#data 3 2
RRC A 1 1
SWAP A 1 1
3.Data transfer:
Mnemonic Byte Cyc
MOV A,@Ri 1 1
MOV DPTR,#data16 3 2
MOV A,Rn 1 1
MOVC A,@A+DPTR 1 2
MOV A,direct 2 1
MOVC A,@A+PC 1 2
MOV A,#data 2 1
MOVX A,@Ri 1 2
MOV @Ri,A 1 1
MOVX A,@DPTR 1 2
MOV @Ri,direct 2 2
MOVX @Ri,A 1 2
MOV @Ri,#data 2 1
MOVX @DPTR,A 1 2
MOV Rn,A 1 1
PUSH direct 2 2
MOV Rn,direct 2 2
POP direct 2 2
MOV Rn,#data 2 1
XCH A,@Ri 1 1
MOV direct,A 2 1
XCH A,Rn 1 1
MOV direct,@Ri 2 2
XCH A,direct 2 1
MOV direct,Rn 2 2
XCHD A,@Ri 1 1
MOV direct,direct3 2
MOV direct,#data 3 2
4.Boolean variable manipulation:
Mnemonic Byte Cyc
CLR C 1 1
ANL C,bit 2 2
SETB C 1 1
ANL C,/bit 2 2
CPL C 1 1
ORL C,bit 2 2
CLR bit 2 1
ORL C,/bit 2 2
SETB bit 2 1
MOV C,bit 2 1
CPL bit 2 1
MOV bit,C 2 2
5.Program and machine control:
Mnemonic Byte Cyc
NOP 1 1
JZ rel 2 2
RET 1 2
JNZ rel 2 2
RETI 1 2
JC rel 2 2
ACALL addr11 2 2
JNC rel 2 2
AJMP addr11 2 2
JB bit,rel 3 2
LCALL addr16 3 2
JNB bit,rel 3 2
LJMP addr16   3   2
JBC bit,rel   3   2
SJMP rel    2 2
CJNE A,direct,rel  3 2
JMP @A+DPTR   1 2
CJNE A,#data,rel 3 2
DJNZ Rn,rel    2   2
CJNE @Ri,#data,rel 3  2
DJNZ direct,rel   3   2
CJNE Rn,#data,rel  3 2

求汇编语言指令, 汇编语言里jc指令时啥意思 求汇编语言中的指令语句、伪指令语句和宏指令语句的定义!先声明下、我没有积分了、所以对于帮助我的人也没有别的办法可以报答了不过听说百度会奖励2个积分的 呵呵 - -请问、汇编语言 汇编语言的TEST指令可不可以详细解释教我呢?最好有例子.THANKS! 如题.汇编语言中,按位取反的指令CPL是那个英文单词的缩写? 在汇编语言中,在RET指令后加个数字,如RET 8, 汇编语言的指令和操作数都采用符号形式(这句话对么)C语言是一种汇编语言(这句话对么) 汇编语言这句指令是什么意思STRING1 DB 40,?,40 DUP(?)两个40分别是什么意思还有问号是什么意思. 8位原码数BBH扩展为16位应为?不要给我说指令,要说具体的算法,汇编语言 汇编语言中寄存器的英文全称汇编语言中通用寄存器和段寄存器以及指令指针的英文全称是什么呢?SP BP DI SI CS DS SS ES IP 知道这些的全称就好记多了. 汇编语言中,cmp指令怎么用?比如cmp ax,bx ax大于bx怎么跳转,小于又怎么跳,等于呢? 汇编语言中$符号的意思是什么?如下题:执行下面指令后(BX)=?X1 DW 'CD'X2 DB 16DUP )Y EQU $-X1MOV BX,Y 常用的算法描述方式有:流程图、________、高级语言.A.汇编语言 B.伪语言 C.宏指令 D.Petri网 汇编语言中,ADD BYTE PTR [BX],BYTE PTR [DI] 这句指令正确吗,如果错了,错在哪?需要怎么改正? 求汇编语言(符号语言)定义我并不是要具体的汇编语言,只是要笼统的定义 寄存器` 控制器 指令 程序 数据 多处理机系统 条件转移的指令 通用程序控制计算机 程序控制的自动数字计算机 多处理机系统 外存储器 内存储器 机器语言的表示 汇编语言 存储程序 数据处 为什么加1指令INC和减1指令对Cf标志位没有影响?(汇编语言的问题)加1指令INC可以实现字节加1或字加1,还有减1指令DEC可以实现字节的减1或字的减1,可是,书上说他们都不影响CF标志位.为什么 什么叫机器指令?机器指令怎样表示算法?为什么要用机器指令表示算法?急求高手解答!