版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告班級:06計(jì)算機(jī)6班 姓名: 李 凱學(xué)號:20063007完成時間:2009年1月3日一、課程設(shè)計(jì)目的1. 在實(shí)驗(yàn)機(jī)上設(shè)計(jì)實(shí)現(xiàn)機(jī)器指令及對應(yīng)的微指令(微程序)并驗(yàn)證,從而進(jìn)一步掌握微程 序設(shè)計(jì)控制器的基本方法并了解指令系統(tǒng)與硬件結(jié)構(gòu)的對應(yīng)關(guān)系;2. 通過控制器的微程序設(shè)計(jì),綜合理解計(jì)算機(jī)組成原理課程的核心知識并進(jìn)一步建立整機(jī) 系統(tǒng)的概念;3. 培養(yǎng)綜合實(shí)踐及獨(dú)立分析、解決問題的能力。二、課程設(shè)計(jì)的任務(wù)針對cop2000實(shí)驗(yàn)儀,從詳細(xì)了解該模型機(jī)的指令/微指令系統(tǒng)入手,以實(shí)現(xiàn)乘法和除 法運(yùn)算功能為應(yīng)用目標(biāo),在cop2000的集成開發(fā)環(huán)境下,設(shè)計(jì)全新的指令系統(tǒng)并編寫對應(yīng)
2、的微程序;之后編寫實(shí)現(xiàn)乘法和除法的程序進(jìn)行設(shè)計(jì)的驗(yàn)證。三、課程設(shè)計(jì)使用的設(shè)備(環(huán)境)1. 硬件 cop2000實(shí)驗(yàn)儀 pc機(jī)2. 軟件 cop2000仿真軟件四、課程設(shè)計(jì)的具體內(nèi)容(步驟)1. 詳細(xì)了解并掌握cop2000模型機(jī)的微程序控制器原理,通過綜合實(shí)驗(yàn)來實(shí)現(xiàn)該模型機(jī)指令系統(tǒng)的特點(diǎn):cop2000模型機(jī)包括了一個標(biāo)準(zhǔn)cpu所具備所有部件,這些部件包括:運(yùn)算器alu、 累加器a、工作寄存器w、左移門l、直通門d、右移門r、寄存器組r0r3、程序計(jì)數(shù)器 pc、地址寄存器mar、堆棧寄存器st、中斷向量寄存器ia、輸入端口 in、輸岀端口寄存 器out、程序存儲器em、指令寄存器ir、微程序計(jì)
3、數(shù)器upc、微程序存儲器um,以及中 斷控制電路、跳轉(zhuǎn)控制電路。其中運(yùn)算器和中斷控制電路以及跳轉(zhuǎn)控制電路用cpld來實(shí) 現(xiàn),其它電路都是用離散的數(shù)字電路組成。微程序控制部分也可以用組合邏輯控制來代替。模型機(jī)為8位機(jī),數(shù)據(jù)總線、地址總線都為8位,但其工作原理與16位機(jī)相同。相比而 言8位機(jī)實(shí)驗(yàn)減少了煩瑣的連線,但其原理卻更容易被學(xué)生理解、吸收。模型機(jī)的指令碼為8位,根據(jù)指令類型的不同,可以有0到2個操作數(shù)。指令碼的最低兩位 用來選擇r0-r3寄存器,在微程序控制方式中,用指令碼做為微地址來尋址微程序存儲器, 找到執(zhí)行該指令的微程序。而在組合邏輯控制方式屮,按時序用指令碼產(chǎn)生相應(yīng)的控制位。 在本模
4、型機(jī)中,一條指令最多分四個狀態(tài)周期,一個狀態(tài)周期為一個時鐘脈沖,每個狀態(tài)周 期產(chǎn)生不同的控制邏輯,實(shí)現(xiàn)模型機(jī)的各種功能。模型機(jī)有24位控制位以控制寄存器的輸 入、輸出,選擇運(yùn)算器的運(yùn)算功能,存儲器的讀寫。24位控制位分別介紹如下:xrd :外部設(shè)備讀信號,當(dāng)給出了外設(shè)的地址后,輸出此信號,從指定外設(shè)讀數(shù)據(jù)。emwr:程序存儲器em寫信號。emrd:程序存儲器em讀信號。pcoe:將程序計(jì)數(shù)器pc的值送到地址總線abus上。emen:將程序存儲器em與數(shù)據(jù)總線dbus接通,由emwr和emrd決泄是將dbus數(shù)據(jù)寫 到em中,還是從em讀出數(shù)據(jù)送到dbusoiren:將程序存儲器em讀出的數(shù)據(jù)打
5、入指令寄存器ir和微指令計(jì)數(shù)器upcoetnt:中斷返回時清除中斷響應(yīng)和中斷請求標(biāo)志,便于下次中斷。elp: pc打入允許,與指令寄存器的ir3、ir2位結(jié)合,控制程序跳轉(zhuǎn)。maren:將數(shù)據(jù)總線dbus上數(shù)據(jù)打入地址寄存器mar。mar0e:將地址寄存器mar的值送到地址總線abus上。0uten:將數(shù)據(jù)總線dbus上數(shù)據(jù)送到輸出端口寄存器out里。sten:將數(shù)據(jù)總線dbus上數(shù)據(jù)存入堆棧寄存器st屮。rrd:讀寄存器組r0-r3,寄存器r?的選擇由指令的最低兩位決定。rwr:寫寄存器組r0-r3,寄存器r?的選擇由指令的最低兩位決定。cn:決定運(yùn)算器是否帶進(jìn)位移位,cn二1帶進(jìn)位,cn二
6、0不帶進(jìn)位。fen:將標(biāo)志位存入alu內(nèi)部的標(biāo)志寄存器。x2:x2、xi、x0三位組合來譯碼選擇將數(shù)據(jù)送到dbls ±的寄存器。xi:x0:cop2000中有7個寄存器可以向數(shù)據(jù)總線輸出數(shù)據(jù),但在某一特定時刻只能有一 個寄存器輸出數(shù)據(jù).由x2,x1,xo決定那一個寄存器輸出數(shù)據(jù).x2x1 x0輸出寄存器0 0 0in_oe外部輸入門0 0 1ia.oe中斷向量0 1 0st_oe堆棧寄存器0 1 1pc_oepc寄存器1 0 0d_oe直通門1 0 1r_oe右移門1 1 0l_oe左移門1 1 1沒冇輸出wen: 將數(shù)據(jù)總線dbus的值打入工作寄存器w»poaen:將數(shù)據(jù)
7、總線dbus的值打入累加器a屮。s2:s2、si、so三位組合決定alu做何種運(yùn)算。s1:so:cop2000中的運(yùn)算器由一片epld實(shí)現(xiàn).有8種運(yùn)算,通過s2,s1,so來選擇.運(yùn)算數(shù)據(jù)由寄存器a及寄存器w給出,運(yùn)算結(jié)果輸出到直通門dos2s1 s0功能0 0 0a+w加0 0 1a-w減0 1 0a|w或0 1 1a&w與1 0 0a+w+c 帶進(jìn)位加1 0 1a-w-c帶進(jìn)位減1 1 0aa取反1 1 1a輸出a模型機(jī)的尋址方式分五種: 累加器尋址:操作數(shù)為累加器a,例如“cpl a”是將累加器a值取反,還有些指 令是隱含尋址累加器a,例如“out”是將累加器a的值輸出到輸出端口
8、寄存器out。 寄存器尋址:參與運(yùn)算的數(shù)據(jù)在r0-r3的寄存器中,例如“add a, r0”指令是 將寄存器r0的值加上累加器a的值,再存入累加器a中。 寄存器間接尋址:參與運(yùn)算的數(shù)據(jù)在存儲器em中,數(shù)據(jù)的地址在寄存器r0-r3中, 例如“mov a, r1 ”指令是將寄存器r1的值做為地址,把存儲器em中該地址的內(nèi) 容送入累加器a屮。 存儲器直接尋址:參與運(yùn)算的數(shù)據(jù)在存儲器em中,數(shù)據(jù)的地址為指令的操作數(shù)。例 如“and a, 40h”指令是將存儲器em中40h單元的數(shù)據(jù)與累加器a的值做邏輯與運(yùn) 算,結(jié)果存入累加器a。 立即數(shù)尋址:參與運(yùn)算的數(shù)據(jù)為指令的操作數(shù)。例如“sub a, # 10h
9、”是從累加 器a屮減去立即數(shù)10h,結(jié)果存入累加器ao模型機(jī)的缺省的指令集分幾大類:算術(shù)運(yùn)算指令、邏輯運(yùn)算指令、移位指令、數(shù)據(jù)傳 輸指令、跳轉(zhuǎn)指令、中斷返冋指令、輸入/輸出指令。該模型機(jī)微指令系統(tǒng)的特點(diǎn)(包括其微指令格式的說明等):模型機(jī)有24位控制位以控制寄存器的輸入、輸出,選擇運(yùn)算器的運(yùn)算功能,存儲器的 讀寫。微程序控制器由微程序給出24位控制信號,而微程序的地址又是由指令碼提供的, 也就是說24位控制信號是由指令碼確定的。該模型機(jī)的微指令的長度為24位,其中微指令 中只含有微命令字段,沒有微地址字段。英中微命令字段采用直接按位的表示法,哪位為0, 表示選屮該微操作,而微程序的地址則由指令
10、碼指定。2。計(jì)算機(jī)中實(shí)現(xiàn)乘法和除法的原理(1)無符號乘法實(shí)例演示(即,列4位乘法具體例子演算的算式):09h xoah=5ah 1001b x1010b=1011010b 計(jì)算過程:x硬件原理框圖:+ 17+ 0067 + 1001 0 1o1oooo-1ooooo1數(shù)值積結(jié)積結(jié)積結(jié)積 乘數(shù)始分間分間分間分操 被乘初部中部中部中部結(jié)r2 (乘數(shù))r1 (被乘數(shù))r0 (積)算法流程圖:(2)無符號除法實(shí)例演示(即,列4位除法具體例子演算的算式人oaah 三 odh=odho1 h101010104-1101=1101 余0004計(jì)算娛0 110 111101 )10 10 10 104 4 0
11、 4 00 0010101010 -4404000010000101101000 00 01110110100 0001110-11010 00 00001商除戮舷至最高位與被刪比較 比被除數(shù)大,部分商為o除數(shù)右移一位與被期比較,比被除數(shù)小,部分商為1除數(shù)右移 f與被除數(shù)比較, 比被除數(shù)小,部分商為彳除數(shù)右移一位與被除數(shù)比較, 比被期大,部分商為0除數(shù)右移 f與被除數(shù)比較, 比被除數(shù)小,部分商為1硬件原理框圖:r0 (被除數(shù))r1 (除數(shù))r3 (計(jì)數(shù))r2 (商)算法流程圖:枚r4為0?救最爲(wèi)住為0?開始r0矍被除救 r4崔除救r210.用以存育r3e0 作計(jì)牧專除rr1左移一住 (不帶進(jìn).
12、住)計(jì)數(shù)黑r3令焙1除教r1右移一住 計(jì)救戀r3勺減*1(帶借?。?.對應(yīng)于以上算法如何分配使用cop2000實(shí)驗(yàn)儀中的硬件(初步分配,設(shè)計(jì)完成后再將準(zhǔn)確的使用情況填寫在此處)乘法:寄存器r0:初值為0,運(yùn)行時累加每次循環(huán)的結(jié)果,運(yùn)行后r0中即為乘法的積。寄存器r1:存放被乘數(shù)。寄存器r2:存放乘數(shù)。除法:寄存器r0:存放被除數(shù)寄存器r1:存放除數(shù)寄存器r2:初值為0,每次循環(huán)如符合條件就將其左移并加1,否則僅左移,最終結(jié)果即為商寄存器r3:計(jì)數(shù)器。初值為0,左移時將其移至最高位為1, r3記錄移動次數(shù)。作除法時,商每上一位時r3即自減1。因左移次數(shù)與最終右移次數(shù)相等,故當(dāng)r3減至負(fù)數(shù)(ff)
13、時即終止程序運(yùn)行。4. 在cop2000集成開發(fā)環(huán)境下設(shè)計(jì)全新的指令/微指令系統(tǒng)設(shè)計(jì)結(jié)果如表所示(可按需要增刪表項(xiàng))(1)新的指令集(設(shè)計(jì)兩個不同指令集要分別列表)助記符機(jī)器碼i機(jī)器碼2指令說明ddd r? , floooooixx oq 07將累加器a屮的數(shù)加入到寄存器r中,不影響標(biāo)志位add r? , #11ooooioxx os -obii將立即數(shù)ii加入到寄存器r中,不影響標(biāo)志位and r? , #11oooolixx oc- ofii將寄存器r中的數(shù)與立即數(shù)ii按位與,并影響標(biāo)志位c/hp r? , floooiooxx 10 - 73作差比較寄存器r屮數(shù)累加器a中數(shù)的大小,并影響標(biāo)
14、志位"ip r? , #110001 otxx 7孕-17ii作弟比較寄存器r中數(shù)與立即數(shù)ii的人小,并影響標(biāo)志位mou fl , r?oooiioxx 18 - ib將寄存器r中的數(shù)放入累加器a中j/hp 個moooug 1c - ifmm跳轉(zhuǎn)到地址mmjcooloooxx 20 -23mm若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到mm地址jz m個001oow 227mm若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到mm地址m0u r? , #11ooloioxx 28-28ii將立即數(shù)11存放到寄存器r中shu r?001 ouxx 2c - 2f寄存器r中的數(shù)不帶進(jìn)位向左移-位,不影響標(biāo)志位5hr r?oolloo
15、xx 30 -寄存器r中的數(shù)不帶進(jìn)位向右移一位,不影響標(biāo)志位33sub r? , ftoolloixx 34 37從寄存器r中減去累加器a屮的數(shù),不影響標(biāo)志位sub r? , #11oollloxx 38 38ii從寄存器r中減去立即數(shù)ii,影響標(biāo)志位over007777朋 3c - 3f結(jié)束(2)新的微指令集助記符狀態(tài)微地址微程序數(shù)據(jù)輸出數(shù)據(jù)打入地址輸出運(yùn)算器移位控制rpcpct000cbffff指令寄存器irpc輸出月輸出寫入+101ffffff月輸出*702ffffff刃輸出*703ffffff月輸出#72d r?,力0氣fff7ef寄存器值r?寄存器w£輸出05fffb9&a
16、mp;月2直通寄存器r?加運(yùn)算+106cbffff指令寄存器irpc輸出月輸出寫入+107ffffff月輸出add r? , #1108fff7f7寄存器值r?寄存器月n輸出709c7ffef存貯器值寄存器u)pc輸出刃輸出*7+10afffb98乩u直通寄存器r?加運(yùn)算+108cbffff指令寄存器irpc輸出月輸出寫入+7and r? , #11ocfff7f7寄存器值r?寄存器月刃輸出*7odc7ffef存貯器值皿寄存器如pc輸出刃輸出*7+1oefffefb標(biāo)志位c, z與運(yùn)算*7ofcbffff指令寄存器ir牝輸出n輸出寫入+1c/hp r? , a10ffff8f£2直通
17、寄存器"月輸出*777fff7f7寄存器值r?寄存器月£輸出*712fffef9標(biāo)志位c, z減運(yùn)算*773cbffff指令寄存器irpc輸出月輸出+1c個p r? , #11wfff7f7寄存器值r?寄存器月月輸出+715c7ffef存貯器值寄存器如&輸出月輸出*7+116fffef9標(biāo)志位c, z減運(yùn)算*777cbffff指令寄存器irpc輸出刃輸出寫入+1mov a , r?7&fff7f7寄存器值r?寄存器月刃輸出+179cbffff指令寄存器ir牝輸出n輸出寫入+17月ffffff月輸出*7ibffffff月輸出*7j/hp 加1cc6ffff存貯
18、器值e"寄存器&pc輸出月輸出*7寫入wcbffff指令寄存器irpc輸出n輸出寫入+17夕ffffff月輸出*7ifffffff月輸出*7jc /h/h20c6ffff存貯器值寄存器pcpc輸出n輸出7寫入27cbffff指令寄存器irpc輸出月輸出寫入+122ffffff月輸出*723ffffff月輸出*7jz m24c6ffff存貯器值寄存器pc牝輸出月輸出*7寫 入25cbffff指令寄存器irpc輸出月輸出寫入+726ffffff刃輸出*727ffffff刃輸出*7mov r? , #/28c7fbff存貯器值em寄存器r?pc輸出月輸出*7+129cbffff指令
19、寄存器ir牝輸出n輸出寫入+12/9ffffff月輸出*728ffffff£輸出*7shl r?2cfff7f7寄存器值r?寄存器月月輸出+72dfff9df仏u左移寄存器r?月輸出左移+72ecbffff指令寄存器ir牝輸出月輸出寫入+12fffffff月輸出*75hr r?30fff7f7寄存器值r?寄存器月刃輸出*737fff9bf磯u右移寄存器r?刃輸出右移*732cbfffe指令寄存器irpc輸出刃輸出寫入+133ffffffn輸出+tsub r? , a3hffff8f£2直通寄存器"月輸出*735fff7f7寄存器值r?寄存器月月輸出*736fffa
20、99磯u直通寄存器r?減運(yùn)算+737cbffff指令寄存器irpc輸出刃輸出寫入+1sub r? , #1138fff7f7寄存器值r?寄存器月月輸出+139c7ffef存貯器值寄存器如&輸出月輸出*73月fffa99磯u直通寄存器r?標(biāo)志位c, z減運(yùn)算*738cbffff指令寄存器ir牝輸出刃輸出寫入+7over3ccbffff指令寄存器ir牝輸出n輸出寫入+15. 用設(shè)計(jì)完成的新指令集編寫實(shí)現(xiàn)無符號二進(jìn)制乘法、除法功能的匯編語言程序(1)乘法4位乘法的算法流程圖與匯編語言程序清單:mov r0,#00hmov r1,#09hmov r2,#0ahbegin: and r2, #0
21、fhjz exitand r2,#01 hjz loopmov a,r1add ro,aloop: shl r1shr r2jmp beginexit:over(2)除法4位除法的算法流程圖與匯編語言程序清單:mov r0,#0aahmov r1,#odhmov r2,#0hmov r3,#0hand r1,#0fhjz exitenter: cmp r1,#80hjc increjmp beginincre: shl r1add r3,#1 hjmp enterbegin: mov a,rocmpr1,ajc rightshlr2jmp decreright: shl r2add r2,#1
22、 hmov a,r1sub ro,adecre: shr r1subr3,#1hjc exitjmp beginexit:over6. 上述程序的運(yùn)行情況(跟蹤結(jié)果)程序運(yùn)行的過程:乘法:匯編指令程序地址機(jī)器碼指令說明微程序pcgpc運(yùn)行時寄存器或存儲器的值mov ro, #0h002800將立即數(shù)0h送入寄存器r0中c7fbff+1+1em: 28cbffff+1寫入em:00r0:0mov r1,#ofh02290f將立即數(shù)ofh送入寄存器r1中c7fbff+1+1em: 29+1寫入em:09rl:09mov r2,#0ah042a0a將立即數(shù)0aii送入寄存器r2中c7fbff+1+1
23、em: 2acbffff+1寫入em:0ar2:0abegin:06oeof測試寄存器r2中的數(shù)是fff7f7+1em: 0eand r2, #ofii否為0,并影響標(biāo)志位cff7ef+1a:oafffefb+1w: 0fcbffff+1寫入jz exit(jz 14)082414若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到exit標(biāo)識的地址14c6ffff寫入+1em: 24cbffff+1寫入and r2,#o1i1oa0e01將寄存器r2中的數(shù)與立即數(shù)01h按位與,并影響標(biāo)志位fff7f7+1em: 0ec7itef+1+1a:oafffefb+1em:01w:01cbffff+1寫入jz loop(jz
24、10)oc2410若零標(biāo)志標(biāo)賈1,則跳轉(zhuǎn)到loop標(biāo)識的地址10c6ffff寫入+1em: 2 4cbffff+1寫入em: 10loop:shl r1102d寄存器r1中的數(shù)不帶進(jìn) 位向左移一位,不影響標(biāo) 志位fff7f7+1em: 2dfff9df+1a:09cbffff+1寫入rl:12shr r21132寄存器r2中的數(shù)不帶進(jìn) 位向右移一位,不影響標(biāo) 志位fff7f7+1em: 32fff9bf+1a: 0a+1寫入r2:05jmp begin(jmp 06)121c06跳轉(zhuǎn)到地址begin標(biāo)識的地址06c6mtf寫入+1em:1ccbffff+1寫入em: 06begin:and r
25、2, #ofii06oeo 卜、測試寄存器r2中的數(shù)是否為(),并影響標(biāo)志位fff7f7+1em: 0ecff7ef+1a: 0amtefb+1w: ofcbffff+1寫入jz exit(jz 14)082414若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到exit標(biāo)識的地址14c6ffff寫入+1em: 24cbffff+1寫入em: 14and r2,#01hoa0e01將寄存器r2屮的數(shù)與立即數(shù)01h按位與,并影響卜'卜'卜'7卜'7+1em: 0ec7itef+1+1a:05標(biāo)志位f1tefb+1em:01w:01cbffff+1寫入jz loopoc2410若零標(biāo)志標(biāo)置1
26、,則跳轉(zhuǎn)到c6ffff寫入+1em: 24(jz 10)loop標(biāo)識的地址10cbffff+1寫入em: 10mov a, r1oe19將寄存器r1中的數(shù)放入fff7f7+1em: 19累加器a中cbffff+1寫入a:12add ro, aof04將累加器a中的數(shù)加入到fff7ef+1em: 04寄存器r0中,不影響標(biāo)志fffb98+1w: 00位cbffff+1寫入r0:2dloop:102d寄存器r1中的數(shù)不帶進(jìn)fff7f7+1em: 2dsi1l r1位向左移位,不影響標(biāo)fff9df+1a:12志位+1寫入rl:24shr r21132寄存器r2中的數(shù)不帶進(jìn)eee7e7+1em: 32
27、位向右移一位,不影響標(biāo)fff9bf+1a:05志位cbffff+1寫入r2:02jmp begin121c06跳轉(zhuǎn)到地址begin標(biāo)識的c6ffff寫入+1em:1c(jmp 06)地址06+1寫入em: 06begin:06oeof測試寄存器r2中的數(shù)是eee7e7+1em: 0eand r2,#0fh否為0,并影響標(biāo)志位cff7ef+1a:02fffefb+1w: ofcbffff+1寫入jz extt082414若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到c6ffff寫入+1em: 24(jz 14)exit標(biāo)識的地址14cbffff+1寫入em: 14and r2,#01hoa0e01將寄存器r2屮的數(shù)與
28、立fff7f7+1em: 0e即數(shù)01h按位與,并影響c7ffef+1+1a:02標(biāo)志位fffefb+1em: 01w:01+1寫入jz loop(jz 10)oc2410若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到loop標(biāo)識的地址10c6ffff寫入+1em: 24cbffff+1寫入em:10loop:shl r1102d寄存器r1 >!的數(shù)不帶進(jìn)位向左移一位,不影響標(biāo)志位fff7f7+1em: 2dfff9df+1a:24cbffff+1寫入rl:48siir r21132寄存器r2中的數(shù)不帶進(jìn) 位向右移一位,不彤響標(biāo) 志位fff7f7+1em: 32mt9bf+1a:02cbffff+1寫入r2:
29、01jmp begin(jmp 06)121006跳轉(zhuǎn)到地址begin標(biāo)識的地址06c6ffff寫入+1em:1ccbffff+1寫入em: 06begin:and r2, #ofh06oeof測試寄存器r2中的數(shù)是否為0,并影響標(biāo)志位fff7f7+1em: 0eci?f7ef+1a:01fffefb+1w: ofcbffff+1寫入jz exit(jz 14082414若零標(biāo)志標(biāo)賈1,則跳轉(zhuǎn)到exit標(biāo)識的地址14c6ffff寫入+1em: 24cbffff+1寫入em: 14and r2,#01iioa0e01將寄存器r2中的數(shù)與立即數(shù)01h按位與,并影響標(biāo)志位fff7f7+1em: 0e
30、c7ffef+1+1a:01fffefb+1em:01w:01cbffff+1寫入jz loop(jz 10)oc2410若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到loop標(biāo)識的地址10c6ffff寫入+1em: 24cbitit+1+1em: 10mov a, r1oe04將寄存器r1 '1'的數(shù)放入累加器a中eee7e7+1em: 19cbffff+1寫入a:48add ro, aof04將累加器a中的數(shù)加入到寄存器r0屮,不影響標(biāo)志位fff7ef+1em: 04f1tb98+1w:12cbitit+1寫入r0: 5aloop:102d寄存器r1屮的數(shù)不帶進(jìn)fff7f7+1em: 2dsi1
31、l r1位向左移一位,不影響標(biāo)fff9df+1a:48志位cbffff+1寫入rl:90shr r21132寄存器r2屮的數(shù)不帶進(jìn)fff7f7+1em: 32位向右移一位,不影響標(biāo)fff9bf+1a:01志位cbffff+1寫入r2:00jmp begin121c06跳轉(zhuǎn)到地址begin標(biāo)識的c6ffff寫入+1em:1c(jmp 06)地址06cbffff+1寫入em: 06begin:06oeof測試寄存器r2中的數(shù)是fff7f7+1em: 0eand r2,#0fh否為0,并影響標(biāo)志位cff7ef+1a:00fffefb+1w: of+1寫入jz exit082414若零標(biāo)志標(biāo)置1,則跳
32、轉(zhuǎn)到c6mtf寫入+1em: 24(jzexit標(biāo)識的地址14cbffff+1寫入em: 14ex it:over1440結(jié)束cbffff+1寫入em: 40除法:匯編指令程序機(jī)器指令說明微程序pcppc運(yùn)行時寄存器或存地址碼儲器的值mov r0, #oaah0028aa將立即數(shù)0aah存放到寄c7eb1'!'+1+1em:28存器r0中cbi'1'i'e+1寫入em: aar0: aamov r1,#odh02290d將立即數(shù)0dh存放到寄存c7fbff+1+1em: 29器r1中cbffff+1寫入em: 0dr1:odmov r2, #0h042a
33、00將立即數(shù)()存放到寄存器c7fbff+1+1em:2ar2中cbi'i'i'e+1藥入em: 00r2:00mov r3, #0h062b00將立即數(shù)0存放到寄存器c7i'bfi'+1+1em: 2br3中cbffff+1寫入em: 00r3:00and r1,#ofh08odof測試寄存器rl中的數(shù)是fff7f7+1em:od否為0,并影響標(biāo)志位c7ffef+1a:odfffefb+1w:ofcbffff+1寫入em: ofjz exitoa242a若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到c6ffff寫入+1em: 24(jz 2a)exit標(biāo)識的地址2acbff
34、ff+1寫入em:2aenter:oc1580作差比較寄存器r1中數(shù)fff7f7+1em:15 a:odcmp rl,#80h少立即80h的大小,并影c7ffef+1+1em: 15a:od響標(biāo)志位fffef9+1em: 80w:80cbffff+1寫入jc increoe2012若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到c6ffff寫入+1em: 20(jc 12)incre標(biāo)識的地址12cbi'l'i'e+1藥入em: 12incre:122d寄存器r中的數(shù)不帶進(jìn)l'fi'71'7+1em: 2da:odshl r1位向左移一位,不影響標(biāo)fff9df+1志位c
35、bffff+1寫入r1:1aadd r3,#1h130b01將立即數(shù)1h加入到寄存fff7f7+1em: 0b器r中,不影響標(biāo)志位c7i'1'e1'+1+1a:00fi'i'b98+1em: 01w:01cbffff+1寫入r3:01jmp enter151c0c跳轉(zhuǎn)到enter標(biāo)識的地c6ffff寫入+1em:1c(jmp oc)址0ccbffff+1寫入em:ocenter:oc1580作差比較寄存器r1中數(shù)fff7f7+1em: 15cmp rl,#80h少立即80h的大小,并影c7ffef+1+1a:1a響標(biāo)志位fffef9+1em: 80w:8
36、0cbffff+1寫入jc increoe2012若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到c6ffff寫入+1em: 20(jc 12)incre標(biāo)識的地址12cbi'l'i'e+1藥入em: 12incre:122d寄存器rl屮的數(shù)不帶進(jìn)fff7f7+1em:2ds11l r1位向左移-位,不影響標(biāo)fff9df+1a:1a志位cbffff+1寫入rl:34add r3,#1h13obo1將立即數(shù)1h加入到寄存fff7f7+1em: ob器r3中,不影響標(biāo)志位c7ffef+ 1+1a:01fffb98+1em: 01w:01cbi'1'i'e+ 1藥入r3:02
37、jmp enter151coc跳轉(zhuǎn)到enter標(biāo)識的地寫入+1em:1c(jmp oc)址occbffff+1寫入em:ocenter:oc1580作差比較寄存器r1中數(shù)fff7f7+1em: 15cmp rl,#80h與立即8oh的大小,并影c7ffef+1+1a:34響標(biāo)志位l'l'l'ei'9+1em: 80w:80cbi'i'i'e+1寫入jc increoe2012若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到寫入+1em: 30(jc 12)incre標(biāo)識的地址12cbffff+1寫入em: 12incre:122d寄存器r1中的數(shù)不帶進(jìn)fff7f
38、7+1em: 2ds11l r1位向左移一位,不影響標(biāo)+1a:34志位cbi'i'i'e+1寫入rl:68add r3,#1h130b01將立即數(shù)1h加入到寄存fff7f7+1em: 0b器r3中,不影響標(biāo)志位c7ffef+1+1a:02fffb98+1em: 01w:01cbi'l'i'e+1藥入r3:03jmp enter151c0c跳轉(zhuǎn)到enter標(biāo)識的地寫入+1em:1c(jmp oc)址0ccbffff+1寫入em:ocenter:oc1580作差比較寄存器r1中數(shù)fff7f7+1em: 68cmp rl,#80h與立即80h的大小,并
39、影c71'fee+1+1a: 15響標(biāo)志位l'l'l'ei'9+1em: 80w:80cbitfe+1寫入jc incre(jc 12)oe2012若進(jìn)位標(biāo)忐置丨,則跳轉(zhuǎn)到incre標(biāo)識的地址12c6ffff寫入+1em:20cbffff+1寫入em: 12incre:shl r1122d寄存器r中的數(shù)不帶進(jìn) 位向左移一位,不影響標(biāo) 志位fff7f7+1em: 2dfff9df+1a:68cbffff+1寫入r1:doadd r3,#1ii130b01將立即數(shù)1h加入到寄存器r3中,不影響標(biāo)志位fff7f7+1em: obc7ffef+1+1a:03ff
40、fb98+1em:01w:01cbffff+1寫入r3:04jmp enter(jmp oc)151c0c跳轉(zhuǎn)到enter標(biāo)識的地址0cc6ffff寫入+1em:1ccbel'i'e+1藥入em:ocenter:cmp rl,#80hoc1580作差比較寄存器r1 '1'數(shù)與立即80h的大小,并影響標(biāo)志位l'fi'71'7+1em: 15c7ffef+1+1a:dofffef9+1em:80w:80cbffff+1寫入jc incre(jc 12)oe2012若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到incre標(biāo)識的地址12c6ffff寫入+1em: 20
41、cbi'i'i'e+1寫入em: 12jmp begin(jmp 17)101c17跳轉(zhuǎn)到begin標(biāo)識的地址17c6ffff寫入+1em:1ccbffff+1寫入em: 17begin:mov a, ro1718將寄存器ro中的數(shù)放入累加器a中fff7f7+1em: 18cbel'i'e+1藥入a:aacmp rl, a1811作差比較寄存器r1 '1'數(shù)與累加器a屮數(shù)的大小,并影響標(biāo)志位ffit8f+1em: 11fff7f7+1w:aafffef9+1a:docbffff+1寫入jc rtght19201e若零標(biāo)志標(biāo)置1,則跳轉(zhuǎn)到藥
42、入+1em: 20(jc id)right標(biāo)識的地址idcbffff+1寫入em:1eshl r2ib2e寄存器r2中的數(shù)不帶進(jìn) 位向左移一位,不矽響標(biāo) 志位fff7f7+1em:2efff9df+1a:00cbffff+1寫入r2:00jmp decre(jmp 23)1c1c23跳轉(zhuǎn)到decrease標(biāo)識的地址23c6ffff寫入+1em:1ccbffff+1寫入em: 23decre:shr r12331寄存器r1中的數(shù)不帶進(jìn) 位向右移一位,不影響標(biāo) 志位fff7f7+1em: 31fff9bf+1a:docbffff+1寫入rl:68sub r3,#1h243b01從寄存器r3中減去立即數(shù)1h,并影響標(biāo)志位fff7f7+1em:3bc7ffef+1a:04fffa99+1em:01w:01cbi'i'i'e+1寫入r3:03jc exit(jc 2a)26202a若進(jìn)位標(biāo)志置1,則跳轉(zhuǎn)到exit標(biāo)識的地址2ac6ffff寫入+1em: 20cbffff+1寫入em:2ajmp begin(jmp 17)281c17跳轉(zhuǎn)到begin標(biāo)識的地址1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育法規(guī)押題練習(xí)試題B卷含答案
- 2024年無線呼叫器項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 2024年煤制合成氨項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 三年級數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)及答案集錦
- 視覺、情感與認(rèn)同:視聽綜藝節(jié)目的文化認(rèn)同建構(gòu)路徑
- 牛津譯林版英語高一上學(xué)期期末試題及答案指導(dǎo)
- 2024年橋梁建設(shè)協(xié)議格式實(shí)例
- 二手房經(jīng)紀(jì)服務(wù)個性化協(xié)議樣本
- 2024年非全日制員工協(xié)議示范文本
- 2024年試用期間協(xié)議期限規(guī)定詳解
- 中國建設(shè)銀行招聘(全國)筆試真題2023
- 光伏系統(tǒng)的安裝工程監(jiān)理實(shí)施細(xì)則
- 標(biāo)準(zhǔn)作業(yè)組合票--自動生成
- 王洼二礦原煤倉機(jī)電設(shè)備安裝工程資料文稿
- 國家開放大學(xué)《理工英語1》邊學(xué)邊練參考答案
- (完整版)繞口令基本功練習(xí)
- PSR-E423中英文音色對照表
- 船舶艙室內(nèi)裝飾施工及檢驗(yàn)標(biāo)準(zhǔn)
- 餐飲MBO目標(biāo)管理課件
- 《2021國標(biāo)結(jié)構(gòu)專業(yè)圖集資料》15G323-2 鋼筋混凝土吊車梁(A4、A5級)(有水印)
- 設(shè)備管理系統(tǒng)概要設(shè)計(jì)說明書.doc
評論
0/150
提交評論