英特尔 8051 EdSim51 7 段显示器
Intel 8051 EdSim51 7 Segment Display
为什么当我删除代码中二进制文件中的 "B" 时,它在显示数字时会乱码?
ORG 0000H
START:
SETB P3.3
SETB P3.4
MOV P1, #11111001
CALL DELAY
CLR P3.3
MOV P1, #10100100
CALL DELAY
CLR P3.4
SETB P3.3
MOV P1, #10110000
CALL DELAY
CLR P3.3
MOV P1, #10011001
CALL DELAY
JMP START
DELAY: MOV R0, #45H
DJNZ R0, $
RET
END
谢谢
因为汇编程序会查看最后一个字符来确定数字的基数。
如果您使用:
MOV P1, #10B
表示二进制值10,给出十进制数2。
如果您使用:
MOV P1, #10
表示十进制的10
如果您使用:
MOV P1, #10H
表示十六进制值10,给出十进制数16。
注意:您的汇编程序应该已经警告过您有关数字溢出的信息。
为什么当我删除代码中二进制文件中的 "B" 时,它在显示数字时会乱码?
ORG 0000H
START:
SETB P3.3
SETB P3.4
MOV P1, #11111001
CALL DELAY
CLR P3.3
MOV P1, #10100100
CALL DELAY
CLR P3.4
SETB P3.3
MOV P1, #10110000
CALL DELAY
CLR P3.3
MOV P1, #10011001
CALL DELAY
JMP START
DELAY: MOV R0, #45H
DJNZ R0, $
RET
END
谢谢
因为汇编程序会查看最后一个字符来确定数字的基数。
如果您使用:
MOV P1, #10B
表示二进制值10,给出十进制数2。
如果您使用:
MOV P1, #10
表示十进制的10
如果您使用:
MOV P1, #10H
表示十六进制值10,给出十进制数16。
注意:您的汇编程序应该已经警告过您有关数字溢出的信息。