❶ 在单片机中,20h,中的h代表什么意思
单片机中20h,其中h表示十六进制,20h就是十六进制数20H,相当于十进制32.
❷ 单片机汇编语言中MOV A,20H是什么意思
就51单片机汇编语言而言,该指令是直接寻址:
MOV
A,
20H
功能是将地址为晌李20H的片宴前迟内RAM一个字节内容送入累加器;
.
就80x86汇编语言而方,该指令是立即寻址:
MOV
AX,
20H
功能是将立即数20H送入累加器A;
.
这条指悔岩令,两种机器的汇编语言的寻址方式容易被混淆。
❸ 如何将单片机片内 20H 到 50H 单元赋值
ORG 0000H
LJMP START
START:
MOV R6, #08;学号8号
MOV R5,#80H;作为递增或递减结果缓存,初始值80H
MOV R0,#20H;存储空间的起始地址
MOV R4,#31H;存储空间中共有31个单元
LOOP1:
MOV A,R5
;先把缓存写入存储单元
MOV @R0,A
INC R0
DJNZ R4,INC_INC;每次R4都先会减一,减一之后等于0就执行下一行,否则就跳转
;赋值完成
SJMP SEARCH_AA
INC_INC:
MOV A,R5
ADD A,R6 ;递增
CJNE A,#0BBH,NE_BB;与最大值BBH比较,相等就执行下一行指令,不相等就跳转到NE_BB,同时若A的值大于或者等于BBH,则C=0,否则C=1。
;等于 bbh,直接写入缓存
LESS_BB:;小于 bbh,也直接写入缓存
MOV R5,A
SJMP LOOP1
NE_BB:
JC LESS_BB
;大于 bbh,要开始递减
;MOV R5,#0BBH;从BB开始递减
;SJMP DEC_DEC
DEC_DEC:
MOV A,R5
SUB A,R6;递减
CJNE A,#80H,NE_80;与最小值80H比较,相等就执行下一行指令,不相等就跳转到NE_80,同时若A的值大于或者等于80H,则C=0,否则C=1。
;等于 80h,直接写入缓存
GREATER_80:;大于 80h,也直接写入缓存
MOV R5,A
MOV @R0,A
INC R0
DJNZ R4,DEC_DEC;每次R4都先会减一,减一之后等于0就执行下一行,否则就跳转
;赋值完成
SJMP SEARCH_AA
NE_80:
JNC GREATER_80
;MOV R5,#80H;从80开始递增
SJMP INC_INC
SEARCH_AA:
MOV R0,#20H;存储空间的起始地址
MOV R4,#31H;存储空间中共有31个单元
MOV 51H,#00;先清零
SEARCH_NEXT:
MOV A, @R0
CJNE A,#0AAH,NE_AA;
;有 AAH 这一数据
MOV 51H,#01
SJMP ENDEND
NE_AA:
DJNZ R4,SEARCH_NEXT
SJMP ENDEND
ENDEND:
END