欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

一款用匯編寫的計算器

查看數(shù): 4876 | 評論數(shù): 6 | 收藏 1
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2018-12-21 22:31

正文摘要:

回復(fù)

ID:946968 發(fā)表于 2021-7-4 16:20
1950773588 發(fā)表于 2021-7-4 16:18
你好,您分享的一種用匯編寫的計算器,我花了兩天時間把別的地方都看懂了,感覺您太厲害了,就是除法那部分 ...

是除法那部分,謝謝
ID:946968 發(fā)表于 2021-7-4 16:19
zhxiufan 發(fā)表于 2020-12-17 09:40
;加了一些注釋,希望對大家有些幫助。
        ORG 0000H
        LJMP START

你好,您分享的一種用匯編寫的計算器,我花了兩天時間把別的地方都看懂了,感覺您太厲害了,就是除法那部分沒看懂您的思路,可以分享一下嗎,或者標(biāo)注一下除法那部分嗎?我隨時期待您的回復(fù),不勝感激!!
ID:946968 發(fā)表于 2021-7-4 16:19
你好,您分享的一種用匯編寫的計算器,我花了兩天時間把別的地方都看懂了,感覺您太厲害了,就是除法那部分沒看懂您的思路,可以分享一下嗎,或者標(biāo)注一下除法那部分嗎?我隨時期待您的解答,不勝感謝!!!
ID:946968 發(fā)表于 2021-7-4 16:18
你好,您分享的一種用匯編寫的計算器,我花了兩天時間把別的地方都看懂了,感覺您太厲害了,就是除法那部分沒看懂您的思路,可以分享一下嗎,或者標(biāo)注一下乘法那部分嗎?
ID:121859 發(fā)表于 2020-12-17 09:40
;加了一些注釋,希望對大家有些幫助。
        ORG 0000H
        LJMP START
        ORG 0030H
START:
        MOV SP,#60H
        LCALL INT              ;調(diào)用初始化子程序
START1:
        LCALL CLEAR            ;調(diào)用清屏子程序
;*********************************固定字符顯示
        mov column3,#0
        mov pagef3,#0
        mov codes,#0                ;'數(shù)'
        lcall writeleft2
        mov column3,#0
        mov pagef3,#4
        mov codes,#2                ;'結(jié)'
        lcall writeleft2
        mov column3,#16
        mov pagef3,#4
        mov codes,#3                ;'果'
        lcall writeleft2
        mov column3,#16
        mov pagef3,#0
        mov codes,#1                ;'字'
        lcall writeleft2
        mov column,#32
        mov pagef,#0
        mov codes,#1                ;'1'
        lcall writeleft
        mov column3,#0
        mov pagef3,#2
        mov codes,#0                ;‘?dāng)?shù)’
        lcall writeleft2
        mov column,#40
        mov pagef,#2
        mov codes,#15                ;':'
        lcall writeleft
        mov column,#40
        mov pagef,#0
        mov codes,#15                ;':'
        lcall writeleft
        mov column3,#16
        mov pagef3,#2
        mov codes,#1                ;‘字’
        lcall writeleft2
        mov column,#32
        mov pagef,#2
        mov codes,#2                ;'2'
        lcall writeleft
        MOV R0,#0
        MOV R1,#255
QQQ:
        MOV @R0,#0
        INC R0
        DJNZ R1,QQQ
;************************************固定字符顯示結(jié)束,鍵盤掃描開始
dd:
        mov r0,#0f7h        ;掃描碼送R0
        mov r1,#0                ;鍵值初始為0
cc:
        mov a,r0
        mov p1,a                ;掃描碼送P1
        mov a,p1                ;讀結(jié)果碼
        mov r2,a                ;結(jié)果碼送R2
        setb c
        mov r3,#4                ;一次共4個掃描碼
bb:
        rlc a                        ;帶進(jìn)位循環(huán)左移,最高位移入C
        jnc aa                        ;如果鍵位在此轉(zhuǎn)aa
ee:
        inc r1                        ;鍵值加1
        djnz r3,bb                ;一行(列)有4個列(行)
        mov a,r0               
        setb c
        rrc a                        ;修改掃描碼
        mov r0,a
        jc cc                        ;如果未完成4行(列)掃描轉(zhuǎn)cc
        ljmp dd                        ;否則轉(zhuǎn)dd(無鍵按下)
aa:
        lcall mm                ;延時約4毫秒
        mov a,p1
        xrl a,r2
        jnz ee                        ;如果是抖動造成轉(zhuǎn)ee
ff:
        mov a,p1
        xrl a,r2
        jz ff                        ;等待按鍵抬起
        sjmp cal_start
;----------------------------------------
KAOO:
        LJMP KAO
BBB2:
        LJMP BB2                        ;接收數(shù)字2
;----------------------------------------
cal_start:
        MOV A,51H                        ;51H:1=加,2=減,3=乘,4=除
        CJNE A,#1,BBB2      ;加法
        MOV A,R1                        ;鍵值
        CJNE A,#14,KAOO                ;14為‘=’
;加法運算開始,數(shù)字組成:49H48H46H45H44H42H41H40H,結(jié)果相同,最高位在CEH
        MOV 47H,R1
        LCALL A31                        ;顯示運算符
        MOV A,40H
        ADD A,60H
        MOV B,#10
        DIV AB
        MOV 40H,B
        ADD A,41H
        ADD A,71H
        MOV B,#10
        DIV AB
        MOV 41H,B
        ADD A,42H
        ADD A,72H
        MOV B,#10
        DIV AB
        MOV 42H,B
        ADD A,44H
        ADD A,74H
        MOV B,#10
        DIV AB
        MOV 44H,B
        ADD A,45H
        ADD A,75H
        MOV B,#10
        DIV AB
        MOV 45H,B
        ADD A,46H
        ADD A,76H
        MOV B,#10
        DIV AB
        MOV 46H,B
        ADD A,48H
        ADD A,78H
        MOV B,#10
        DIV AB
        MOV 48H,B
        ADD A,49H
        ADD A,79H
        MOV B,#10
        DIV AB
        MOV 49H,B
        MOV 0CEH,A                ;最高位
        CJNE A,#0,CC0
        MOV A,49H
        CJNE A,#0,CC1
        MOV A,48H
        CJNE A,#0,CC2
        MOV A,46H
        CJNE A,#0,CC3
        MOV A,45H
        CJNE A,#0,CC4
        MOV A,44H
        CJNE A,#0,CC5
        MOV A,42H
        CJNE A,#0,CC6
        MOV A,41H
        CJNE A,#0,CC7
        MOV A,40H
        CJNE A,#0,CC8
;顯示結(jié)果
CC0:LCALL A08
CC1:LCALL A07
CC2:LCALL A06
CC3:LCALL A05
CC4:LCALL A04
CC5:LCALL A03
CC6:LCALL A02
CC7:LCALL A01
CC8:LCALL A00
        LJMP DD
KAO:
        CJNE A,#15,KAO1                ;15為ESC鍵
        LJMP START1
KAO1:
        MOV A,50H
        CJNE A,#0,A1A1
        MOV 60H,R1
        LCALL A8
        INC 50H
        ljmp dd
A1A1:
        CJNE A,#1,A1A2
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        INC 50H
        LJMP DD
A1A2:
        CJNE A,#2,A1A3
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        INC 50H
        LJMP DD
A1A3:
        CJNE A,#3,A1A5
        MOV 74H,72H
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        LCALL A11
        INC 50H
        LJMP DD
A1A5:
        CJNE A,#4,A1A6
        MOV 75H,74H
        MOV 74H,72H
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        LCALL A11
        LCALL A12
        INC 50H
        LJMP DD
A1A6:
        CJNE A,#5,A1A7
        MOV 76H,75H
        MOV 75H,74H
        MOV 74H,72H
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        LCALL A11
        LCALL A12
        LCALL A13
        INC 50H
        LJMP DD
A1A7:
        CJNE A,#6,A1A9
        MOV 78H,76H
        MOV 76H,75H
        MOV 75H,74H
        MOV 74H,72H
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        LCALL A11
        LCALL A12
        LCALL A13
        LCALL A14
        INC 50H
        LJMP DD
A1A9:
        CJNE A,#7,A1A10
        MOV 79H,78H
        MOV 78H,76H
        MOV 76H,75H
        MOV 75H,74H
        MOV 74H,72H
        MOV 72H,71H
        MOV 71H,60H
        MOV  60H,R1
        LCALL A8
        LCALL A9
        LCALL A10
        LCALL A11
        LCALL A12
        LCALL A13
        LCALL A14
        LCALL A15
        INC 50H
A1A10:
        LJMP DD
BBB3:
        LJMP BB33
KAOO2:
        LJMP KAO2
BB2:
        CJNE A,#2,BBB3    ;減法運算
..........
ID:121859 發(fā)表于 2020-12-16 08:16
代碼可用,但注釋太少,函數(shù)名稱也沒有相應(yīng)的含義,無法弄懂呀。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表