mcs51程序问题!以下程序 LOOP:MOV A,#0FH 中为什么要给A刚开始赋值#0FH?

ORG 0000H
LJMP LOOP
ORG 0030H
LOOP:MOV A,#0FH
MOV P1,A
MOV A,P1
ORL A,#0F0H
SWAP A
MOV P1,A
SJMP LOOP
END
这个问题是p1.0~p1.3联开关,p1.4~p1.5联发光二极管

从程序要实现的功能上看这一句确实没什么用,可以直接用MOV P1,#0FH替代,两句变为一句,该语句功能无非是置高低4位保证P1.0~P1.3为输入状态。我猜测是编写者写程序的一种规范或者是COPY操作所致,因为CPU运算速度是微秒级的,因时间要求多这一条指令好像没什么意义。
温馨提示:内容为网友见解,仅供参考
无其他回答

...LOOP:MOV A,#0FH 中为什么要给A刚开始赋值#0FH?
从程序要实现的功能上看这一句确实没什么用,可以直接用MOV P1,#0FH替代,两句变为一句,该语句功能无非是置高低4位保证P1.0~P1.3为输入状态。我猜测是编写者写程序的一种规范或者是COPY操作所致,因为CPU运算速度是微秒级的,因时间要求多这一条指令好像没什么意义。

51单片机编程问题,为何程序只能执行键盘的第一次指令?以后的指令不执行...
anl a,#0fh cjne a,#0fh,key mov a,#00h ajmp main key:cjne a,0eh,n1 mov p1,#10101010b ajmp main n1:cjne a,0dh,n2 mov p1,#10111010b ajmp main n2:cjne a,0bh,n3 mov p1,#10001010b ajmp main n3:cjne a,07h,over mov p1,#11111111b ajmp main...

MCS-51单片机试题
MOV A,#0FHADD A,#F8H (要求写出过程)PSW中有四位标志位,随着运算指令发生变化。MOV A,#0FH P=0,C不变,V不变,Ac不变ADD A,#F8H (要求写出过程) 0000 1111 + 1111 1000--- 1 0000 0111 P=1,C=1,V=0,Ac=1 ACC=03H3. 简述80C51单片机的I\/O口的功能和特点;输入、输出;准双向口,输入之前,...

请教朋友指点下单片机程序题,谢谢~~
LOOP:MOV A.@R0 XCH A,@R1 MOV @R0,A INC R0 INC R1 DJNZ R7,LOOP SJMP 6.MOV R0,#41H MOV R7,#03H LOOP:MOV A,@R0 SWAP A MOV @R0,A INC R0 DJNZ R7,LOOP MOV 40H,#00H MOV R0,#41H MOV R7,#03H NEXT:MOV A,@R0 ANL A,#0FH DEC R0 ORL A,@R0 MOV @R0,A IN...

单片机,未变语言程序问题分析
这不是计算A的两倍,而是把R0里面的本来是用BCD表示的数变成二进制数,比如R0的内容是31H,这是BCD表示的,即高四位表示十位,低四位表示个位,即表示实际的31,但31用二进制数表示是1FH,所以先把十位3取出来乘以10,再加上个位1,结果就是1FH。不知道我说清楚没有 ...

MOV 0FH, #0AH是什么意思
这是用汇编语言编写的单片机程序,表示将立即数0AH送到内存单元0FH中。操作数0AH前面加#表示他是一个立即数!!你可以去看看汇编语言版的《单片机原理与应用》这本书,期望对你有帮助

求助:关于80C51单片机简易计算器设计的程序,要求是汇编语言。谢谢哈...
MOV 30H,#0 ;30H是功能键存放单元,置为0 MOV 40H,#0 ;40H单元初始置为0 MOV 41H,#0 ;41H单元初始置为0LOOP:LCALL DIR LCALL KEY INC R5;散转程序,判断按下的是哪个键S1:CJNE A,#10,S2 ;不是"+"键,跳到S2 LJMP FUN ;是"+"键,跳到FUNS2:CJNE A,#11,S3 ;不是"-"键,跳到S3 LJMP FUN...

51单片机控制数码管循环显示0-9程序
P1,A LCALL DELAY INC R1 CJNE R1,#0AH,DISP SJMP TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDELAY: MOV R4,#2 DELAY100MS:MOV R5,#200 DELAY5MS: MOV R6,#250 LOOP: DJNZ R6,LOOP DJNZ R5,DELAY5MS DJNZ R4,DELAY100MS RET ...

51单片机---多字节除法---汇编程序
不会,应根据进位标志来处理

求一单片机(C51)的简易计算器程序,能实现加减乘除。
CJNE A,#11,LOOP2 ;“=”MOV A,33H MOV B,#10 MUL AB ADD A,34H MOV D_DAT,A LCALL DEALDAT LCALL HB2 MOV A,R5 ANL A,#0FH MOV 34H,A MOV A,R5 SWAP A ANL A,#0FH MOV 33H,A MOV A,R4 ANL A,#0FH MOV 36H,A MOV A,R4 SWAP A ANL A,#0FH MOV 35H,A SJMP ...

相似回答