📄 0607.asm
字号:
MOV R5,A
MOV A,R6
RLC A
MOV R6,A
RET
;
;
DIV1:
MOV R4,#80H ;每分钟计数器计数值
MOV R5,#0C3H ;......
MOV R6,#0C9H ;......
MOV R7,#01H ;......
MOV A,3Bh ;除数高八位为零?
JNZ BEIGN ;不为零转BRIGN开始
MOV A,3Ch ;
JZ OVER ;除数低八位为零?为零结束.
BEIGN: CLR A ;清余数寄存器R3,R2
MOV R3,A
MOV R2,A
MOV R1,#20H ;被除数位数进R1
DIV0: ACALL RLC4 ;调余数和被除数循环左移一位子程
MOV A,R2 ;左移后,余数低八位减除数低八位
SUBB A,3Ch
MOV R0,A ;差进R0
MOV A,R3
SUBB A,3Bh ;余数高八位减除数高八位
JC NEXT ;不够减转
INC R4 ;够减商加一
MOV R3,A ;余数进R3
MOV A,R0 ;差
MOV R2,A ;差进R2
NEXT: DJNZ R1,DIV0 ;不够减看10H次到否,否则转
MOV A,R3 ;到则看余数高位为一否?
RLC A
JC ROUND ;为一,则五入,商加一
MOV A,R2
RLC A ;余数大于二分之一
MOV R2,A
MOV A,R3
RLC A
SUBB A,3Bh
JC DON ;余数乘2小于除数
JNZ ROUND ;非零,大于除数,商加一
MOV A,R2
SUBB A,3Bh
JC DON
ROUND: ACALL ADD1 ;调商加一子程
DON: CLR A
MOV 40H,R4
MOV 41H,R5
MOV 42H,R6
MOV 43H,R7
RET
OVER: MOV A,#0FFH
RET
ADD1: MOV A,R4
ADD A,#01H
MOV R4,A
MOV A,R5
ADDC A,#0
MOV R5,A
MOV A,R6
ADDC A,#0
MOV R6,A
RET
RLC4: CLR C
MOV A,R4
RLC A
MOV R4,A
MOV A,R5
RLC A
MOV R5,A
MOV A,R6
RLC A
MOV R6,A
MOV A,R7
RLC A
MOV R7,A
MOV A,R2
RLC A
MOV R2,A
MOV A,R3
RLC A
MOV R3,A
RET
count1:
MOV A,41H ;转速表高八位
SWAP A
ANL A,#0FH
MOV 38H,A ;转速表高八位除16后,结果进38H,作下标(i)
MOV A,40H ;转速表低八位
ANL A,#0F0H
SWAP A
MOV 39H,A ;转速表低八位除16后,结果进39H,作下标(j)
MOV A,41H ;转速表高八位进ACC
SWAP A ;高低四位互换
ANL A,#0F0H ;屏蔽低四位
ORL 39H,A ;与直接地址39H相或进39H
ACALL READ_T
RET
count2: MOV 20H,51H
MOV A,51H ;转速表高八位
SWAP A
ANL A,#0FH
MOV 38H,A ;转速表高八位除16后,结果进38H,作下标(i)
MOV A,50H ;转速表低八位
ANL A,#0F0H
SWAP A
MOV 39H,A ;转速表低八位除16后,结果进39H,作下标(j)
MOV A,51H ;转速表高八位进ACC
SWAP A ;高低四位互换
ANL A,#0F0H ;屏蔽低四位
ORL 39H,A ;与直接地址39H相或进39H
ACALL READ_T2
RET
;=============================================
; 读TAB表 子程序
;=============================================
READ_T: mov a,38h
jz done
done1: cjne a,#01h,done2
ajmp done
done2: cjne a,#02h,done3
ajmp done
done3: dec a
ajmp done2
done:
MOV 38H,A
add a,#0Ah
mov dph,a
MOV DPL,39h
clr a
MOVc A,@a+DPTR
MOV 36H,A
mov a,38h
add a,#0Dh
mov dph,a
MOV DPL,39h
clr a
MOVc A,@a+DPTR
MOV 37H,A
RET
;
READ_T2:
mov a,38h
jz DDD
DDD1: cjne a,#01h,DDD2
ajmp DDD
DDD2: cjne a,#02h,DDD3
ajmp DDD
DDD3: dec a
ajmp DDD2
DDD:
MOV 38H,A
add a,#0Ah
mov dph,a
MOV DPL,39h
clr a
MOVc A,@a+DPTR
MOV 36H,A
mov a,38h
add a,#0Dh
mov dph,a
MOV DPL,39h
clr a
MOVc A,@a+DPTR
MOV 37H,A
RET
;======================================================
;
;======================================================================================
org 0A00h
;======================================================================================
tabA00:
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH
DB 0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH
DB 0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH
DB 0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH
DB 0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH
DB 0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FBH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH
DB 0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH
DB 0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH,0FAH
DB 0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H
TABB00:
DB 0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H
DB 0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F9H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H
DB 0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H
DB 0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H,0F8H
DB 0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H
DB 0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H
DB 0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F7H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H
DB 0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H
DB 0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H,0F6H
DB 0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H
DB 0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H
DB 0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F5H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H
DB 0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H
DB 0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H,0F4H
DB 0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H
DB 0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H
TABC00:
DB 0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F3H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H
DB 0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H
DB 0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H,0F2H
DB 0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H
DB 0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H
DB 0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F1H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H
DB 0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H
DB 0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H,0F0H
DB 0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH
DB 0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH
DB 0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH
DB 0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH
DB 0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH,0EEH
DB 0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH
DB 0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH
DB 0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0ECH,0EBH,0EBH,0EBH,0EBH,0EBH,0EBH,0EBH,0EBH
tabD00:
DB 8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH
DB 8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH
DB 8AH,8AH,8AH,8AH,8AH,8AH,8AH,8AH,89H,89H,89H,89H,89H,89H,89H,89H
DB 89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H
DB 89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H,89H
DB 88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H
DB 88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H,88H
DB 88H,88H,88H,88H,88H,88H,88H,88H,87H,87H,87H,87H,87H,87H,87H,87H
DB 87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H
DB 87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H,87H
DB 86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H
DB 86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H,86H
DB 86H,86H,86H,86H,86H,86H,86H,86H,85H,85H,85H,85H,85H,85H,85H,85H
DB 85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H
DB 85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H,85H
DB 84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H
TABE00:
DB 84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H,84H
DB 84H,84H,84H,84H,84H,84H,84H,83H,83H,83H,83H,83H,83H,83H,83H,83H
DB 83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H
DB 83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H,83H
DB 82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H
DB 82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H,82H
DB 82H,82H,82H,82H,82H,82H,82H,82H,81H,81H,81H,81H,81H,81H,81H,81H
DB 81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H
DB 81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H,81H
DB 80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H
DB 80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H,80H
DB 80H,80H,80H,80H,80H,80H,80H,80H,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH
DB 7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH
DB 7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH,7FH
DB 7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH
DB 7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH
TABF00:
DB 7EH,7EH,7EH,7EH,7EH,7EH,7EH,7EH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH
DB 7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH
DB 7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH,7DH
DB 7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH
DB 7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH
DB 7CH,7CH,7CH,7CH,7CH,7CH,7CH,7CH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH
DB 7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH
DB 7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH,7BH
DB 7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH
DB 7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH
DB 7AH,7AH,7AH,7AH,7AH,7AH,7AH,7AH,79H,79H,79H,79H,79H,79H,79H,79H
DB 79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H
DB 79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H,79H
DB 78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H
DB 78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H,78H
DB 78H,78H,78H,78H,78H,78H,78H,78H,77H,77H,77H,77H,77H,77H,77H,77H
;======================================================================================
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -