📄 0526.lst
字号:
05-26-01
13:01:34
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
; (R7R6)/(35H36H)=(R7R6)
; (R3R2)=余数部分
;==============================================================
;
015A E53B DIV1: MOV A,3Bh ;除数高八位为零?
015C 7004 JNZ BEIGN ;为零转
015E E53C MOV A,3Ch ;
0160 6036 JZ OVER ;除数低八位为零?为零结束.
0162 E4 BEIGN: CLR A ;清余数寄存器R3,R2
0163 FB MOV R3,A
0164 FA MOV R2,A
0165 7920 MOV R1,#20H ;被除数位数进R1
0167 31A8 DIV0: ACALL RLC4 ;调余数和被除数循环左移一位子程
0169 EA MOV A,R2 ;左移后,余数低八位减除数低八位
016A 953C SUBB A,3Ch
016C F8 MOV R0,A ;差进R0
016D EB MOV A,R3
016E 953B SUBB A,3Bh ;余数高八位减除数高八位
0170 4004 JC NEXT ;不够减转
0172 0C INC R4 ;够减商加一
0173 FB MOV R3,A ;余数进R3
0174 E8 MOV A,R0 ;差
0175 FA MOV R2,A ;差进R2
0176 D9EF NEXT: DJNZ R1,DIV0 ;不够减看10H次到否,否则转
0178 EB MOV A,R3 ;到则看余数高位为一否?
0179 33 RLC A
017A 4010 JC ROUND ;为一,则五入,商加一
017C EA MOV A,R2
017D 33 RLC A ;余数大于二分之一
017E FA MOV R2,A
017F EB MOV A,R3
0180 33 RLC A
0181 953B SUBB A,3Bh
0183 4009 JC DON ;余数乘2小于除数
0185 7005 JNZ ROUND ;非零,大于除数,商加一
0187 EA MOV A,R2
0188 953B SUBB A,3Bh
018A 4002 JC DON
018C 319B ROUND: ACALL ADD1 ;调商加一子程
018E E4 DON: CLR A
018F 8C40 MOV 40H,R4
0191 8D41 MOV 41H,R5
0193 8E42 MOV 42H,R6
0195 8F43 MOV 43H,R7
0197 22 RET
0198 74FF OVER: MOV A,#0FFH
019A 22 RET
C:\YOU4\LPC767\0526.ASM
页 6
05-26-01
13:01:34
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
019B EC ADD1: MOV A,R4
019C 2401 ADD A,#01H
019E FC MOV R4,A
019F ED MOV A,R5
01A0 3400 ADDC A,#0
01A2 FD MOV R5,A
01A3 EE MOV A,R6
01A4 3400 ADDC A,#0
01A6 FE MOV R6,A
01A7 22 RET
01A8 C3 RLC4: CLR C
01A9 EC MOV A,R4
01AA 33 RLC A
01AB FC MOV R4,A
01AC ED MOV A,R5
01AD 33 RLC A
01AE FD MOV R5,A
01AF EE MOV A,R6
01B0 33 RLC A
01B1 FE MOV R6,A
01B2 EF MOV A,R7
01B3 33 RLC A
01B4 FF MOV R7,A
01B5 EA MOV A,R2
01B6 33 RLC A
01B7 FA MOV R2,A
01B8 EB MOV A,R3
01B9 33 RLC A
01BA FB MOV R3,A
01BB EB MOV A,R3
01BC 33 RLC A
01BD 22 RET
;
;=============================================
01BE E538 READ_T: mov a,38h
01C0 6012 jz done
01C2 B40102 done1: cjne a,#01h,done2
01C5 21D4 ajmp done
01C7 B40202 done2: cjne a,#02h,done3
01CA 21D4 ajmp done
01CC B40302 done3: cjne a,#03h,done4
01CF 21D4 ajmp done
01D1 14 done4: dec a
01D2 21CC ajmp done3
01D4 2408 done: add a,#08h
01D6 F583 mov dph,a
01D8 853982 MOV DPL,39h
01DB E4 clr a
C:\YOU4\LPC767\0526.ASM
页 7
05-26-01
13:01:34
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
01DC 93 MOVc A,@a+DPTR
01DD F536 MOV 36H,A
01DF E538 mov a,38h
01E1 240C add a,#0ch
01E3 F583 mov dph,a
01E5 853982 MOV DPL,39h
01E8 E4 clr a
01E9 93 MOVc A,@a+DPTR
01EA F537 MOV 37H,A
01EC 22 RET
;==============================================
END
C:\YOU4\LPC767\0526.ASM
页 8
05-26-01
13:01:34
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
符号 值 类型
AADR0 = 00C0H CONST 常量
AADR1 = 00C1H CONST 常量
AC = 00D6H CONST 常量
ACC = 00E0H CONST 常量
ADCHK = 011DH CODE 标号
ADCI = 00C4H CONST 常量
ADCON = 00C0H CONST 常量
ADCS = 00C3H CONST 常量
ADC_N = 003AH CONST 常量
ADD1 = 019BH CODE 标号
ADNEXT = 0114H CODE 标号
ADREAD = 010BH CODE 标号
AD_0 = 0083H CONST 常量
AD_1 = 0084H CONST 常量
AD_2 = 0085H CONST 常量
AD_3 = 0086H CONST 常量
AFAN = 00DAH CODE 标号
AIR_BUF = 0031H CONST 常量
AIR_T = 0032H CONST 常量
ARL = 00DCH CONST 常量
ATB = 00DEH CONST 常量
AUXR1 = 00A2H CONST 常量
B = 00F0H CONST 常量
BASICH = 0036H CONST 常量
BASICL = 0037H CONST 常量
BEIGN = 0162H CODE 标号
CARL = 00DCH CONST 常量
CIN1A = 0084H CONST 常量
CIN1B = 0083H CONST 常量
CIN2A = 0082H CONST 常量
CIN2B = 0081H CONST 常量
CLRTI = 00CDH CONST 常量
CMP1 = 00ACH CONST 常量
CMP1_ = 0086H CONST 常量
CMP2 = 00ADH CONST 常量
CMP2_ = 0080H CONST 常量
CMPREF = 0085H CONST 常量
COMPINA = 0081H CONST 常量
COMPINB = 0082H CONST 常量
COMPOUT = 0080H CONST 常量
COOL_ = 003FH CONST 常量
COOL_X = 002DH CONST 常量
COUNT = 0142H CODE 标号
CRD = 00DDH CONST 常量
C:\YOU4\LPC767\0526.ASM
页 9
05-26-01
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -