?? hextobcd.bak
字號:
$include(hextodecvar.inc)
main :MOV Hex1,#0FFh
MOV Hex2,#00h
ACALL ConvertToBCD
AJMP main
AddingWeight :
MOV R2,#03h
MOV R1,#BCD1
AddingLoop :CLR A
MOVC A,@A+DPTR
ADD A,@R1
DA A
MOV @R1,A
DJNZ R2,$+4
INC DPTR
RET
INC DPTR
INC R1
JNC AddingLoop
INC @R1
AJMP AddingLoop
EndAdding: RET
ConvertToBCD:
MOV BCD1,#00h
MOV BCD2,#00h
MOV BCD3,#00h
CLR F0
MOV DPTR,#BinWeight
MOV A,Hex1
BeginLoop :MOV Temp0,#08h
ByteLoop : PUSH ACC
JNB ACC.0,$+7
ACALL AddingWeight
SJMP ConvLoop
INC DPTR
INC DPTR
INC DPTR
ConvLoop: POP ACC
DJNZ Temp0,$+5
AJMP $+5
RR A
AJMP ByteLoop
JB F0,$+9
SETB F0
MOV A,Hex2
AJMP BeginLoop
RET
BinWeight :DB 01h,00h,00h,02h,00h,00h
DB 04h,00h,00h,08h,00h,00h
DB 16h,00h,00h,32h,00h,00h
DB 64h,00h,00h,28h,01h,00h
DB 56h,02h,00h,12h,05h,00h
DB 24h,10h,00h,48h,20h,00h
DB 96h,40h,00h,92h,81h,00h
DB 84h,63h,01h,68h,27h,03h
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -