微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 单片机汇编指令入门学习和查看

单片机汇编指令入门学习和查看

时间:11-25 来源:互联网 点击:

1H,R7 ; R7送直接地址

NOP

MOV DPTR,#1234H;建立数据指针地址为1234H

ACALL L00BA ;绝对调用

MOV 03H,C ;进位送03H位(即20H的03位)

MOVC A,@A+DPTR ;由A+DPTR寻扯的程序存贮器字节送A

SUBB A,#01H ;A减去立即数和进位位

SUBB A,02H ; A减去直接地址内容和进位位

SUBB A,@R0 ; A减去R0间接RAM和进位位

SUBB A,@R1 ; A减去R1间接RAM和进位位

SUBB A,R0 ; A减去R0和进位位

SUBB A,R1 ; A减去R1和进位位

SUBB A,R2 ; A减去R2和进位位

SUBB A,R3 ; A减去R3和进位位

SUBB A,R4 ; A减去R4和进位位

SUBB A,R5 ; A减去R5和进位位

SUBB A,R6 ; A减去R6和进位位

SUBB A,R7 ; A减去R7和进位位

ORL C,/00H ;直接位的反或到进位

AJMP L0084 ;绝对转移

MOV C,03H ;直接位数送进位

INC DPTR ;数据指针加1

MUL AB ;A乘以B

NOP ;A5H为二字节空操作指令

NOP

MOV @R0,05H ;直接字芯送R0间接RAM

MOV @R1,05H ; 直接字芯送R1间接RAM

MOV R0,05H ; 直接字芯送R0

MOV R1,05H ; 直接字芯送R1

S0100: MOV R2,05H ; 直接字芯送R2

MOV R3,05H ; 直接字芯送R3

MOV R4,05H ; 直接字芯送R4

MOV R5,05H ; 直接字芯送R5

MOV R6,05H ; 直接字芯送R6

MOV R7,05H ; 直接字芯送R7

ANL C,/04H ; 直接位的反与到进位

ACALL S0100 ;绝对调用

CPL 04H ;直接位取反

CPL C ;进位取反

CJNE A,#01H,L0139 ;立即数与A比较,不相等则转移

CJNE A,01H,L0139 ; 直接字节与A比较,不相等则转移

CJNE @R0,#01H,L0139 ; 立即数与R0间接RAM比较,不相等则转移

CJNE @R1,#01H,L0139 ; 立即数与R1间接RAM比较,不相等则转移

CJNE R0,#01H,L0139 ; 立即数与R0比较,不相等则转移

CJNE R1,#01H,L0139 ; 立即数与R1比较,不相等则转移

CJNE R2,#01H,L0139 ; 立即数与R2比较,不相等则转移

CJNE R3,#01H,L0139 ; 立即数与R3比较,不相等则转移

CJNE R4,#01H,L0139 ; 立即数与R4比较,不相等则转移

CJNE R5,#01H,L0139 ; 立即数与R5比较,不相等则转移

CJNE R6,#01H,L0139 ; 立即数与R6比较,不相等则转移

CJNE R7,#01H,L0139 ; 立即数与R7比较,不相等则转移

PUSH 00H ;直接字节进栈,SP加1

L0139: AJMP L0084 ;绝对转移

CLR 04H ;直接位清零

CLR C ;清零进位

SWAP A ;A左环移四位(A的二个半字节交换)

XCH A,05H ;交换A和直接字节

XCH A,@R0 ; 交换A和R0间接RAM

XCH A,@R1 ; 交换A和R1间接RAM

XCH A,R0 ; 交换A和R0

XCH A,R1 ; 交换A和R1

XCH A,R2 ; 交换A和R2

XCH A,R3 ; 交换A和R3

XCH A,R4 ; 交换A和R4

XCH A,R5 ; 交换A和R5

XCH A,R6 ; 交换A和R6

XCH A,R7 ; 交换A和R7

POP 00H ;直接字节出栈,SP减1

ACALL L0139 ;绝对调用

SETB 03H ;置位直接位

SETB C ;置位进位

DA A ;A的十进制加法调熊

DJNZ 01H,L0139 ;直接字节减1,不为零则转移

XCHD A,@R0 ;交换A和R0间接RAM的低4位

XCHD A,@R1 ; 交换A和R1间接RAM的低4位

L0158: DJNZ R0,L0139 ; R0减1,不为零则转移

DJNZ R1,L0158 ; R1减1,不为零则转移

DJNZ R2,L0158 ; R2减1,不为零则转移

DJNZ R3,L0158 ; R3减1,不为零则转移

DJNZ R4,L0158 ; R4减1,不为零则转移

DJNZ R5,L0158 ; R5减1,不为零则转移

DJNZ R6,L0158 ; R6减1,不为零则转移

DJNZ R7,L0158 ; R7减1,不为零则转移

MOVX A,@DPTR ;外部数据(16位地址)送A

L0169: NOP

AJMP L0139 ;绝对转移

MOVX A,@R0 ;R0间址即外部数据(8位地址)送A

MOVX A,@R1 ; R1间址即外部数据(8位地址)送A

CLR A ;清零A

MOV A,05H ;直接字节送A

MOV A,@R0 ;R0间接RAM送A

MOV A,@R1 ; R1间接RAM送A

MOV A,R0 ; R0送A

MOV A,R1 ; R1送A

MOV A,R2 ; R2送A

MOV A,R3 ; R3送A

MOV A,R4 ; R4送A

MOV A,R5 ; R5送A

MOV A,R6 ; R6送A

MOV A,R7 ; R7送A

MOVX @DPTR,A

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top