[英]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。
注意:您的匯編程序應該警告您有關數字溢出的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.