版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本文格式為word版,下載可任意編輯單片機(jī)實(shí)驗(yàn)報(bào)告1 單片機(jī)試驗(yàn)報(bào)告 試驗(yàn)一 數(shù)據(jù)傳送 (ra m) 一、試驗(yàn)?zāi)康?熟識(shí)星研集成環(huán)境軟件或熟識(shí) kei 5集成環(huán)境軟件得使用方法。 熟識(shí) ms51 匯編指令,能自己編寫(xiě)簡(jiǎn)潔得程序,把握數(shù)據(jù)傳輸?shù)梅椒ā?二、試驗(yàn)內(nèi)容 1、熟識(shí)星研集成環(huán)境軟件或熟識(shí)l 51 集成環(huán)境軟件得安裝與使用方法。 、編寫(xiě)程序,實(shí)現(xiàn)內(nèi)外部數(shù)據(jù)段得傳送、校驗(yàn)。 三、程序框圖 開(kāi)頭 堆棧指針初始化計(jì)數(shù)器、地址初始化內(nèi)部ram數(shù)據(jù)傳送外部ram一次地址指針+1 計(jì)數(shù)器-1=0?計(jì)數(shù)器、地址指針復(fù)位取內(nèi)部ram和對(duì)應(yīng)的外部ram比較是否相等地址指針+1 計(jì)數(shù)器-1=0?傳送正確傳送錯(cuò)
2、誤結(jié)束nnyyyn數(shù)據(jù)傳送程序框圖 四、試驗(yàn)步驟 mar 據(jù)數(shù)部外測(cè)檢,序程試調(diào)式方點(diǎn)斷、步單用使;據(jù)數(shù)入輸中f h03 mr 部?jī)?nèi)在得 100h 10fh 中得內(nèi)容。熟識(shí)查瞧特別功能寄存器、內(nèi)部數(shù)據(jù) rm、外部數(shù)據(jù)空間得各種方法. 五、程序清單 ;將內(nèi)部a address1 開(kāi)頭得 1個(gè)字節(jié)送到外部a從 adress開(kāi)頭得單元里,再作比較。 adress1 a 30h address2 xdat 000h or 000h ljp sta og 0100h str: mov sp,#6h v 0,ddrss1 mov dptr,addrss2 mv r7,#0h sta1: mov a,r0
3、;傳送 o dt,a ic r0 ic dptr djnz r7,star1 mo r,#adres m dpt,#adde ov r7,h sta2: mov b,0 ;比較 mox a,dpr je a,star nc 0 inc p dnz r7,star2 sjmp ;傳送正確 tar3: sjp $ ;傳送錯(cuò)誤 en 試驗(yàn)二 雙字節(jié) d bcd 碼( ( 十進(jìn)制數(shù)) ) 加法 一、試驗(yàn)?zāi)康?熟識(shí)1 匯編指令,學(xué)會(huì)使用星研集成環(huán)境軟件,能自己編寫(xiě)簡(jiǎn)潔得程序,熟識(shí)cd 碼,了解如何調(diào)用系統(tǒng)供應(yīng)得子程序. 二、試驗(yàn)內(nèi)容 從鍵盤(pán)上輸入位被加數(shù)、加數(shù),實(shí)現(xiàn)雙字節(jié) bcd 碼(四位數(shù))得加法,結(jié)
4、果顯示在數(shù)碼管上;熟識(shí)使用斷點(diǎn)、單步進(jìn)入、單步、運(yùn)行到光標(biāo)處、修改 pc 指針、全速運(yùn)行等各種調(diào)試手段;熟識(shí)查瞧特別功能寄存器、內(nèi)部數(shù)據(jù)am、外部數(shù)據(jù)空間得各種方法。 三、試驗(yàn)框圖 開(kāi)頭初始化堆棧設(shè)定先清led,再接收鍵輸入標(biāo)志通過(guò)鍵盤(pán)獲得4位被加數(shù)(壓縮bcd碼)置位接收到第一個(gè)鍵后才清除led標(biāo)志通過(guò)鍵盤(pán)獲得4位加數(shù)(壓縮bcd碼)被加數(shù)與加數(shù)的低位字節(jié)不帶進(jìn)位加法被加數(shù)與加數(shù)的高位字節(jié)帶進(jìn)位加法十進(jìn)制調(diào)整十進(jìn)制調(diào)整壓縮bcd碼(結(jié)果)轉(zhuǎn)換為非壓縮bcd碼高位0消隱顯示結(jié)果雙字節(jié)bcd加法程序框圖 四、試驗(yàn)步驟 、 :明說(shuō)線連d3 區(qū) :l - b區(qū):m d3 區(qū) :cs - a3 區(qū):c
5、s5 區(qū) :0 - a區(qū): 、在 f4 區(qū)得鍵盤(pán)上輸入 4 位被加數(shù)、加數(shù) 3、結(jié)果顯示在 f4 區(qū)得數(shù)碼管上 五、程序清單 exn cd(dipay, gtbcdky) buffe aa 30h ;8 字節(jié)顯示緩沖區(qū) f bt 0h ;psw、 org 000 m stat rg 000h start: mo sp,6 clr f1 ;先清除顯示,再接收鍵輸入 tart1: o r0,buffe mov ,#4 ;按鍵次數(shù) lcall getde ;得到雙字節(jié)十進(jìn)制數(shù)(被加數(shù)) se f1 ;接收到第一個(gè)鍵,才清除顯示 mov r0,#buffer4 ov a,# ;按鍵次數(shù) lcal gt
6、dk ;得到雙字節(jié)十進(jìn)制數(shù)(加數(shù)) mov ,bfer+1 a a,bffr+5 da a mv uffer+5,a mov ,buffer ac a,bufer+4 a mv ffe+4,a c a l a dsplay: push acc ;顯示結(jié)果 o r0,#buffe mo a,b5 ;低位 acall bto2 ;壓縮 bd 碼轉(zhuǎn)換成非壓縮 bcd 碼 m a,fer4 ;高位 acall b1ob pop c ;進(jìn)位 acal b1to mov r,#1h ;最高二位消隱 inc r0 mov r0,#10h mv r0,#bfe+5 mo r7,#5 acal blakdila
7、y ;將高位 0 消隱 mov r0,#ufer lall displa8 mp tart1 ;將一個(gè)字節(jié)壓縮 bd 碼轉(zhuǎn)換成二個(gè)字節(jié)非壓縮 bcd 碼 bb2: push cc an a,0f o 0,a inc r op c anl a,0f0h swap a mv r0,a ic 0 re bla kdisplay: mov a,r0 ;將高位消隱 jnz exit o a,#0h o r0,a ec 0 dj r7,bacdpy exit: rt n 試驗(yàn)三 雙字節(jié) d bcd 碼(十進(jìn)制數(shù))減法 一、試驗(yàn)?zāi)康?熟識(shí)1 匯編指令,學(xué)會(huì)使用星研集成環(huán)境軟件,把握匯編語(yǔ)言得設(shè)計(jì)與調(diào)試方法.
8、能瞧懂程序流程框圖,能自己設(shè)計(jì)程序,熟識(shí) bcd 碼、補(bǔ)碼,了解如何調(diào)用系統(tǒng)供應(yīng)得子程序。 二、試驗(yàn)內(nèi)容 從鍵盤(pán)上輸入位被減數(shù)、減數(shù),實(shí)現(xiàn)雙字節(jié) bcd 碼(四位數(shù))得減法,結(jié)果顯示在數(shù)碼管上;進(jìn)一步熟識(shí)使用斷點(diǎn)、單步進(jìn)入、單步、運(yùn)行到光標(biāo)處、修改 p指針、全速運(yùn)行等各種調(diào)試手段;熟識(shí)查瞧特別功能寄存器、內(nèi)部數(shù)據(jù) rm、外部數(shù)據(jù)空間得各種方法。 三、程序框圖 設(shè)定先清led,再接收鍵輸入標(biāo)志堆棧初始化開(kāi)頭通過(guò)鍵盤(pán)獲得雙字節(jié)十進(jìn)制被減數(shù)(壓縮bcd碼)置位接收到第一個(gè)鍵后才清除led標(biāo)志通過(guò)鍵盤(pán)獲得雙字節(jié)十進(jìn)制減數(shù)(壓縮bcd碼)減數(shù)進(jìn)行十進(jìn)制取補(bǔ)雙字節(jié)十進(jìn)制加法操作c=1?c=0,有進(jìn)位(結(jié)果
9、為負(fù)),再執(zhí)行一次求補(bǔ)運(yùn)算,調(diào)整為正數(shù)高位0消隱,若結(jié)果為負(fù),前面加上-顯示結(jié)果yn雙字節(jié)十進(jìn)制減法程序框圖 四、試驗(yàn)步驟 、 :明說(shuō)線連d3 區(qū) :ck 區(qū):m 3 區(qū) :cs a3 區(qū):cs5 d3 區(qū) :0 a3 區(qū):a0 2、在 f4 區(qū)得鍵盤(pán)上輸入 4 位被減數(shù)、減數(shù) 、結(jié)果顯示在 f區(qū)得數(shù)碼管上 五、程序清單 extn cod(sply8, etbdkey) bufer data 30h ;8 字節(jié)顯示緩沖區(qū) f1 bi 0d1h ;psw、1 org 0000 ljp star org 0100h start: mov sp,6h cr f ;先清除顯示,再接收鍵輸入 s1: v
10、 r0,#buffer mov a,#4 ;按鍵次數(shù) lcall tcky ;得到雙字節(jié)十進(jìn)制數(shù)(被減數(shù)) etb 1 ;接收到第一個(gè)鍵,才清除顯示 m r0,#buff+4 mov a,#4 ;按鍵次數(shù) lcall getbcdey ;得到雙字節(jié)十進(jìn)制數(shù)(減數(shù)) mov a,9a clr c ubb a,buffe+5 mov bue+5, mv a,#h lr c sub ,buffr+4 ov bffer4,a ;減數(shù)取補(bǔ) mov ,bufer+1 ad a,buffer+5 da ov bfr+5,a m a,buffe adc a,bufer4 d mv buffer,a mo ,c
11、 ;借位標(biāo)志 jc dislay ov a, sub a,uffer ov ufer+5,a mo a,99h ubb a,buffe xh ,buffr+ add ,0h da a xh a,bufer+5 ddc a,#00h a v buffe4,a ispay: ov r0,bufr ;顯示結(jié)果 ov a,ffe5 ;低位 acall b1tob2 ;壓縮cd 碼轉(zhuǎn)換成非壓縮 bcd 碼 mo a,bfer+4 ;高位 call btob2 mov ,#0h ;最高四位消隱 ic r0 mov r0,10h in r0 mov r0,#0h inc r,#10h mv 0,buffr+
12、 r7,3 acl lakdsply ;將高位 0 消隱 mov r,#bfer la dipay sjmp sat1 blackdi play: a,r0 ;將高位 0 消隱 jnz eit ov a,10 mov r, e r0 djnz r7, l c disply exi: jb f0,exit1 inc r0 ov r0,11 ;負(fù)數(shù)標(biāo)志 xit1: ret b1tob2: push acc nl a,#0fh ov r, nc r0 op acc n a,0f0 sap a mov ,a inc r0 ret blackdispl y: mo a,r0 jz it mov a,#0
13、 mov r0,a dec r0 nz r7,acisy exit: ret ed 四 試驗(yàn)四 數(shù)制進(jìn)十轉(zhuǎn)數(shù)制進(jìn)六十節(jié)字四 四字節(jié)十六進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù) 一、試驗(yàn)?zāi)康?進(jìn)一步熟識(shí)1 匯編指令,了解十六進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù)得方法. 二、試驗(yàn)內(nèi)容 從鍵盤(pán)上輸入 8 位十六進(jìn)制數(shù),實(shí)現(xiàn)四字節(jié)十六進(jìn)制數(shù)轉(zhuǎn)位十進(jìn)制數(shù),并在數(shù)碼管上顯示。留意輸入數(shù)據(jù)必需在0000000h0f0000h 范圍,否則,結(jié)果超出位十進(jìn)制數(shù),無(wú)法正確顯示。 三、程序框圖 初始化堆棧開(kāi)頭設(shè)定先清led,再接收鍵輸入標(biāo)志通過(guò)鍵盤(pán)獲得4字節(jié)十六進(jìn)制數(shù)置位接收到第一個(gè)鍵后,才清除led標(biāo)志十六進(jìn)制轉(zhuǎn)十進(jìn)制子程序顯示開(kāi)頭0r4,r5,r6,r7
14、(用于存放壓縮bcd碼)32b(循環(huán)次數(shù))clr c四字節(jié)十六進(jìn)制數(shù)帶進(jìn)位左移一位(r4r5r6r7)2+進(jìn)位位c(r4r5r6r7),同時(shí)進(jìn)行十進(jìn)制調(diào)整主程序 十六進(jìn)制轉(zhuǎn)十進(jìn)制子程序ny返回b-1=0? 四、試驗(yàn)步驟 、1 :明說(shuō)線連d區(qū) :ck - b2 區(qū):2m d3 區(qū) :cs - a區(qū):cs5 d區(qū) :a0 - a區(qū):a0 2、在 f區(qū)得鍵盤(pán)上輸入 8 位十六進(jìn)制數(shù) 3、結(jié)果顯示在 f4 區(qū)得數(shù)碼管上 五、程序清單 extr coe(play, gekey) ffr at 30h ;8 字節(jié)顯示緩沖區(qū) bi 0d1h ;ps、1 org 00h ljmp sar og 100h st
15、ar: m p,#60 r f ;先清除顯示,再接收鍵輸入 star1: m 0,#buffe mov a,#8 ;按鍵次數(shù) lcall gtkey ;得到字節(jié)十六進(jìn)制數(shù) set 1 ;接收到第一個(gè)鍵后,才清除顯示 mo r0,bfer v r1,buffr+ ov r,buffer2 ov r3,uffer3 acal b4td4 ;轉(zhuǎn)換成十進(jìn)制數(shù) disly: mov r0,bur ;顯示結(jié)果 v a, ;低位 acll b ;壓縮cd 碼轉(zhuǎn)換成非壓縮cd 碼 ov a,r6 ca btb2 mov a, r5 call tob a,r4 ;高位 b1t2 ov r0,#uffr7 mov
16、 r7,7 al ackisplay ;將高位消隱 m r0,#buffer lcal dily8 sjmp start1 ;四字節(jié)十六進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù):01r2為十六進(jìn)制,rr6r為壓縮 bc碼 b4od4: l a mv r4,a mov r, mov 6,a mo 7,a o b,#32 op: cl c ov a,r3 rl r3, mo a,2 l a mov r,a mov a,r rc mov r1, mov ,r0 rlc a ov r0,a mv a,r7 adc ,r a mov r7,a mov a,r6 d a, a m r, mov a,r5 ddc a,r da a
17、 mov r5, m ,r4 ad a,r4 a a o r4,a dnz ,lo ret b1to2: push cc al a,#0f ov r0,a inc r0 pop acc anl a,#00h swap a mv 0, ic r rt lakdispay: ov a, ;將高位 0 消隱 jn exit v a,#10h m r0,a dec 0 djnz r7, lac display exit: rt end 五 試驗(yàn)五 節(jié)字雙 雙字節(jié) d bcd 碼( ( 十 進(jìn)制數(shù)) ) 乘法 一、試驗(yàn)?zāi)康?進(jìn)一步熟識(shí)1 匯編指令,把握匯編語(yǔ)言得設(shè)計(jì)與調(diào)試方法.依據(jù)程序流程圖,自己設(shè)計(jì)程
18、序,了解如何調(diào)用系統(tǒng)供應(yīng)得子程序。 二、試驗(yàn)內(nèi)容 從鍵盤(pán)上輸入 4 位被乘數(shù)、乘數(shù),實(shí)現(xiàn)四位十進(jìn)制數(shù)得乘法,結(jié)果顯示在數(shù)碼管上。 三、程序框圖 開(kāi)頭初始化堆棧設(shè)定先清led再接收鍵輸入標(biāo)志通過(guò)鍵盤(pán)獲得4位十進(jìn)制被乘數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)并壓棧暫存置位接收到第一個(gè)鍵后,才清除led標(biāo)志通過(guò)鍵盤(pán)獲得4位十進(jìn)制乘數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)(r2r3)被乘數(shù)出棧(r0r1)雙字節(jié)十六進(jìn)制乘法子程序十六進(jìn)制結(jié)果轉(zhuǎn)十進(jìn)制壓縮bcd碼轉(zhuǎn)非壓縮bcd碼將高位0消隱顯示雙字節(jié)bcd乘法程序框圖 (r0)(r1) (r2)(r3)(r3r1h)(r3r1l)(r3r0h)(r3r0l)(r2r1h)(r2r1l)(r2r0h)(
19、r2r0l)r0 r1 r2 r3+雙字節(jié)十六進(jìn)制乘法示意圖 四、試驗(yàn)步驟 、 :明說(shuō)線連3 區(qū) :clk - 區(qū):2m 3 區(qū) :s - a區(qū):cs5 區(qū) :a0 a3 區(qū):a 2、在4 區(qū)得鍵盤(pán)上輸入 4 位被乘數(shù)、乘數(shù) 3、結(jié)果顯示在 f4 區(qū)得數(shù)碼管上 五、程序清單 etrn code(dsplay8, gtbcde) ufr data h ;字節(jié)顯示緩沖區(qū) f1 bt 01h ;psw、1 r 000h ljmp start org 010h sta: mov sp,#60 clr f1 ;先清除顯示,再接收鍵輸入 str1: mov r0,#buer o a,#4 ;按鍵次數(shù) la
20、ll etey ;得到雙字節(jié)十進(jìn)制數(shù)(被乘數(shù)) o r0,#uffer aa d4t2 ;轉(zhuǎn)換成二進(jìn)制數(shù) ps 2h puh 03h seb f ;接收到第一個(gè)鍵,才清除顯示 ov r0,#buffe mv a, ;按鍵次數(shù) call gbcdk ;得到雙字節(jié)十進(jìn)制數(shù)(乘數(shù)) mov r0,#buffe cl d4tb ;轉(zhuǎn)換成二進(jìn)制數(shù) pop 01h pop 00h acll wrdml ;(0r1)(rr3)=rrr2r3 aa 4tod4 ;轉(zhuǎn)換成十進(jìn)制數(shù) disla: mov r,#buffer ;顯示結(jié)果 o a,7 ;低位 acl 1ob ;壓縮 bd 碼轉(zhuǎn)換成非壓縮 bd 碼 m
21、ov ,6 acall b1tob mov a, 5 acall b1tob2 mo a,r ;高位 acal 1tob2 ov r0,#bufe7 ov r7,# acall blacdispy ;將高位 0 消隱 mo r0,#buffer ll display sjp sta1 ;雙字節(jié)十六進(jìn)制數(shù)乘以雙字節(jié)十六進(jìn)制數(shù)子程序 wordmul: mv a,3 ; ( )1r()0r mov b,r ; (r2)(r3) mul a ;- - - a,r3 ; (3rh)(31l) mv 7, ; (r30h)(r3r0l) mov b,r0 ; (2r1h)(r1l) mul ab ;(2r
22、0h)(r2r0l) add a,r7 ; - - mv 7,a ; r0 r r2 r3 cl a addc a,b xh ,r1 mov b, ab dd a,r xch a,2 sh ac mo a,b add a,r1 mov ,a lr a rlc a xh ,r0 op b mul b ad a,1 ov r1,a mo ,r c a, mo r, re ;雙字節(jié)十進(jìn)制數(shù)轉(zhuǎn)二進(jìn)制數(shù) ,r-指向雙字節(jié)十進(jìn)制數(shù),結(jié)果在 r23 中 4to: mov a,r0 anl a,0fh x ,r0 anl ,0f0h w a mo b,0 mul a add a, c r0 mov b,#10
23、 mul ab v r2,b mo r3,a mov a,r nl a,#fh a,r0 l a,#0f swp a add a,r3 ch ,r2 addc a,#0 mov b,10 mul ab xch a, mov b,1 mul add a,r mv r,a ov a,r addc ,b mv r2,a et bto2: pu cc al ,#0f mov r0, ic 0 op acc anl ,0fh sap a ov r0,a inc r0 ret blackdisplay: mo a,r ;將高位 0 消隱 jnz ext mov a,10 mov r,a dc r djnz
24、 ,blakdpay b4od: clr a mov r4,a ov r,a mov r,a mov r7,a mov b,2 et: re ed 試驗(yàn)六 雙字節(jié)c c 碼除于單字節(jié) d bcd 碼 一、試驗(yàn)?zāi)康?進(jìn)一步熟識(shí) 51 匯編指令,把握匯編語(yǔ)言得設(shè)計(jì)與調(diào)試方法.自己設(shè)計(jì)程序,了解如何調(diào)用系統(tǒng)供應(yīng)得子程序。 二、試驗(yàn)內(nèi)容 從鍵盤(pán)上輸入 4 位被除數(shù)、二位除數(shù),實(shí)現(xiàn)雙字節(jié) bc碼除于單字節(jié)d 碼,結(jié)果顯示在數(shù)碼管上。 三、程序框圖 開(kāi)頭初始化堆棧設(shè)定先清led,再接收鍵輸入標(biāo)志通過(guò)鍵盤(pán)獲得4位被除數(shù),轉(zhuǎn)換為十六進(jìn)制數(shù)并暫存通過(guò)鍵盤(pán)獲得單字節(jié)除數(shù),轉(zhuǎn)換為16進(jìn)制數(shù)顯示子程序置位接收到第一個(gè)
25、鍵后,才清除led標(biāo)志單字節(jié)除法:被除數(shù)的高字節(jié)除以除數(shù),結(jié)果為最終商的高8位雙字節(jié)除以單字節(jié)(商為16位)雙字節(jié)除以單字節(jié)(商只有8位)子程序最終獲得結(jié)果(16位的商,8位余數(shù))雙字節(jié)除以單字節(jié)(商為16位)子程序循環(huán)次數(shù)8r716位被除數(shù)(r2,r3)帶進(jìn)位左移一位(最低位補(bǔ)0, c f0)r2-除數(shù)(b)f0=1?c=1?差r2,r3自加1r7-1=0?雙字節(jié)除以單字節(jié)(商為8位)子程序開(kāi)頭 開(kāi)頭返回返回主程序yyynnn雙字節(jié)bcd除法程序框圖 四、試驗(yàn)步驟 1、連線說(shuō)明: d3 區(qū) :cl b2 區(qū):2 d3 區(qū) :s - a區(qū):5 3 區(qū) :a0 a3 區(qū):0 2、在 f4 區(qū)得鍵
26、盤(pán)上輸入 4 位被乘數(shù)、乘數(shù) 3、使用各種手段調(diào)試程序 4、結(jié)果顯示在 f4 區(qū)得數(shù)碼管上 單 五、程序清單 exr code(diplay, getbcdky) buffr dta 0 ;8 字節(jié)顯示緩沖區(qū) f1 bit 0d ;psw、1 r 0000h ljp star og 00 srt: mo sp,60h clr f1 ;先清除顯示,再接收鍵輸入 tat1: mov r0,bffer ov a,#4 ;按鍵次數(shù) lcall tbdey ;得到雙字節(jié)十進(jìn)制數(shù)(被除數(shù)) setb f1 ;接收到第一個(gè)鍵,才清除顯示 m r0,buffer acl 4tb ;轉(zhuǎn)換成二進(jìn)制數(shù) o r0,#
27、uffer mo a,#2 lcall gtbcdkey ;得到 1 字節(jié)十進(jìn)制數(shù)(除數(shù)) m r0,#bfr acll dtob ;轉(zhuǎn)換成二進(jìn)制數(shù) jn sr acall dsplayrrr ;除數(shù)為,出錯(cuò) sjp tar ar: acall b2_di_b1 ;被除數(shù) / 除數(shù) acal dispa ;顯示商與被除數(shù) sjp strt1 ; 雙字節(jié)除于單字節(jié),r2r為 1位二進(jìn)制數(shù),b 為除數(shù),商在 r2r中, 余數(shù)在 a 中 b2_div_b1: pus b mv a,r2 ab mv r2,b op pu cc cll iv_b_ op a ch ,r2 et ;雙字節(jié)除于單字節(jié),r2
28、r3 為被除數(shù),為除數(shù),結(jié)果:商 r3 中,余數(shù)在 r中 div_b2b1: mv 7,# ;雙字節(jié)除于單字節(jié) dv2: cl ;r2r3 為被除數(shù),b 為除數(shù), mo a,r ;結(jié)果:商3 中,余數(shù)在 r2 中 lc a m r3,a o a,2 rlc a mv r2,a mv f0, clr bb a,b b f,iv3 jc d4 div: ov r2,a r3 div4: dnz r,d2 ret ;4 字節(jié)二進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù),r2r3 為 1位二進(jìn)制數(shù),r4rr為壓縮d 碼 btod5: cl mov r,a ; mov 5,a o 6,a o r7,16 loop: lr c m
29、ov a,r rlc a mov r3,a m a,r2 r a mv , m a,r6 addc a,r6 da ov r6,a mov a,r5 ad a,5 da ov r,a mov ,r4 ddc ,r4 d a mv r4,a dn ,op et 2tob2: mov a,0 ;1 字節(jié)十進(jìn)制數(shù)轉(zhuǎn)二進(jìn)制數(shù) an a,#fh ;指向 1 字節(jié)十進(jìn)制數(shù),結(jié)果在中 xch a,r anl a,0f0 ap mv b,#1 mul ab dd a,r ;轉(zhuǎn)換成二進(jìn)制數(shù) m b,a rt spla: ush ac ;商在低四位,余數(shù)在高三位 all b2tod ;二進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù) mv r
30、0,buffer mov ,r acal b1tob2 ;壓縮c碼轉(zhuǎn)換成非壓縮 bcd 碼 v a,r5 call bto2 c r mov r,3 acal blaksply ;將高位消隱 mov bffr4,#10h ;消隱 mov r0,buff7 po cc mo b,00 iv a mo r0, dc r0 mv ,b mo ,#1 div ab o r0,a dec r0 mo ,b mo r0,#ufer+7 mov r7,2 acll bckdispay ;將高位 0 消隱 v r0,#bfe lall isplay et displa e ror: mov r0,#buffr mov 7,8 m a,#0h dislayerr1: mv r,a inc r0 djz r,layrrr1 mov 0,buffr call dispy8 rt d4ob2: mo a,r0 anl a,h h a,r an a,f0h swap a mov b,#10 l a add a,r0 nc mv ,#1 mu ab mov r2,b mov r3,a mv a,r0 nl a,#0fh xch ,r nl a,#0fh sap add a,r ch
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度公共場(chǎng)所窗簾清洗與保養(yǎng)服務(wù)合同3篇
- 2025年度離婚后子女撫養(yǎng)權(quán)協(xié)商服務(wù)合同3篇
- 2025年度稅收籌劃與稅務(wù)籌劃合規(guī)性審查合同2篇
- 2025年度恐怖劇本定制與特效設(shè)計(jì)合同3篇
- 2024版輕鋼房屋建造協(xié)議模板協(xié)議
- 二零二四商鋪?zhàn)赓U合作協(xié)議:教育培訓(xùn)機(jī)構(gòu)商鋪?zhàn)赓U合同3篇
- 2025年度餐飲品牌連鎖拓展合同范本3篇
- 二零二四年家居裝飾團(tuán)購(gòu)合同3篇
- 2025年度材料墊資供應(yīng)鏈金融服務(wù)合同3篇
- 2024年鐵礦石采購(gòu)中介服務(wù)合同樣本
- 使用錯(cuò)誤評(píng)估報(bào)告(可用性工程)模版
- 公司章程(二個(gè)股東模板)
- GB/T 19889.7-2005聲學(xué)建筑和建筑構(gòu)件隔聲測(cè)量第7部分:樓板撞擊聲隔聲的現(xiàn)場(chǎng)測(cè)量
- 世界奧林匹克數(shù)學(xué)競(jìng)賽6年級(jí)試題
- 藥用植物學(xué)-課件
- 文化差異與跨文化交際課件(完整版)
- 國(guó)貨彩瞳美妝化消費(fèi)趨勢(shì)洞察報(bào)告
- 云南省就業(yè)創(chuàng)業(yè)失業(yè)登記申請(qǐng)表
- UL_標(biāo)準(zhǔn)(1026)家用電器中文版本
- 國(guó)網(wǎng)三個(gè)項(xiàng)目部標(biāo)準(zhǔn)化手冊(cè)(課堂PPT)
- 快速了解陌生行業(yè)的方法論及示例PPT課件
評(píng)論
0/150
提交評(píng)論