版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精品文檔計(jì)算機(jī)組成原理實(shí)驗(yàn)報(bào)告年級(jí)、專業(yè)、班級(jí)姓名實(shí)驗(yàn)題目浮點(diǎn)數(shù)的表示和計(jì)算實(shí)驗(yàn)時(shí)間實(shí)驗(yàn)地點(diǎn)A主404實(shí)驗(yàn)成績(jī) 實(shí)驗(yàn)性質(zhì)驗(yàn)證性 設(shè)計(jì)性 綜合性教師評(píng)價(jià):算法/實(shí)驗(yàn)過(guò)程正確; 源程序/實(shí)驗(yàn)內(nèi)容提交 程序結(jié)構(gòu)/實(shí)驗(yàn)步驟合理;實(shí)驗(yàn)結(jié)果正確; 語(yǔ)法、語(yǔ)義正確; 報(bào)告規(guī)范; 其他: 評(píng)價(jià)教師簽名:一、實(shí)驗(yàn)?zāi)康?(1) 深入掌握二進(jìn)制數(shù)的表示方法以及不同進(jìn)制數(shù)的轉(zhuǎn)換; (2) 掌握二進(jìn)制不同編碼的表示方法; (3) 掌握IEEE 754 中單精度浮點(diǎn)數(shù)的表示和計(jì)算。二、實(shí)驗(yàn)項(xiàng)目?jī)?nèi)容 假設(shè)沒有浮點(diǎn)表示和計(jì)算的硬件,用軟件方法采用仿真方式實(shí)現(xiàn)IEEE 754單精度浮點(diǎn)數(shù)的表示及運(yùn)算功能,具體要求如下: (1)
2、 程序需要提供人機(jī)交互方式(GUI或者字符界面)供用戶選擇相應(yīng)的功能; (2) 可接受十進(jìn)制實(shí)數(shù)形式的輸入,在內(nèi)存中以IEEE 754單精度方式表示,支持以二進(jìn)制和十六進(jìn)制的方式顯示輸出; (3) 可實(shí)現(xiàn)浮點(diǎn)數(shù)的加減乘除運(yùn)算; (4) 可以使用80X86或MIPS或ARM匯編指令,但是不能使用浮點(diǎn)指令,只能利用整數(shù)運(yùn)算指令來(lái)編寫軟件完成。三、實(shí)驗(yàn)過(guò)程或算法(源程序) 1. 本次項(xiàng)目我們采用單精度浮點(diǎn)數(shù)格式讀入兩個(gè)浮點(diǎn)數(shù),并讀入一個(gè)操作符,然后根據(jù)操作符類型選擇運(yùn)算類型,加法指令如下: sum:subu$sp,$sp,32 sw $ra,20($sp)sw$fp,16($sp)addiu $fp
3、,$sp,28sw $a0,0($fp) #calculate the first numberandi $s2,$s0,0x80000000 # s2 is the sign srl$s2,$s2,31andi $s3,$s0,0x7f800000# s3 is the exponent srl$s3,$s3,23andi $s4,$s0,0x007fffff# s4 is the fraction addi$s4,$s4,0x00800000 #calculate the second numberandi $s5,$s1,0x80000000 # s5 is the sign srl$s
4、5,$s5,31andi $s6,$s1,0x7f800000# s6 is the exponent srl$s6,$s6,23andi $s7,$s1,0x007fffff# s7 is the fraction addi$s7,$s7,0x00800000sub$t0,$s3,$s6blt$t0,0,sumL1 # add subbgt$t0,0,sumL2# sub addbeq$t0,0,sumL3 2. 減法指令如下:mysub:subu$sp,$sp,32 sw $ra,20($sp)sw$fp,16($sp)addiu $fp,$sp,28sw $a0,0($fp) #calc
5、ulate the first numberandi $s2,$s0,0x80000000 # s2 is the sign srl$s2,$s2,31andi $s3,$s0,0x7f800000# s3 is the exponent srl$s3,$s3,23andi $s4,$s0,0x007fffff# s4 is the fraction addi$s4,$s4,0x00800000 #calculate the second numberxori $s5,$s1,0x80000000 # s5 is the sign srl$s5,$s5,31andi $s6,$s1,0x7f8
6、00000# s6 is the exponent srl$s6,$s6,23andi $s7,$s1,0x007fffff# s7 is the fraction addi$s7,$s7,0x00800000sub$t0,$s3,$s6blt$t0,0,subL1 # +,-bgt$t0,0,subL2# -,+beq$t0,0,subL3# +,+ or -,-3. 乘法指令如下:mutilStart:srl $t2,$s0,31 srl $t3,$s1,31 sll $t4,$s0,1srl $t4,$t4,24 # expsll $t5,$s1,1srl $t5,$t5,24 # ex
7、p # 0.1fracsll$t6,$s0,9srl $t6,$t6,9ori $t6,$t6,0x00800000sll $t6,$t6,8 addi $t4,$t4,1 # 0.1fracsll $t7,$s1,9srl $t7,$t7,9ori $t7,$t7,0x00800000sll $t7,$t7,8addi $t5,$t5,1sub $t4,$t4,127add $t4,$t4,$t5 # final expsub $t5,$t5,$t5mutilCompareSign:add $t2,$t2,$t3sll $t2,$t2,31 # final signmultu $t6,$t7
8、mfhi $t5#regularandi $t8,$t5,0x80000000beq $t8,0x80000000,mutilnextsll $t5,$t5,1sub $t4,$t4,1mutilnext:sll $t5,$t5,1 # IEEE754sub $t4,$t4,1srl $t5,$t5,9 # final fractionmutilFinal:sll $t4,$t4,24srl $t4,$t4,1addu $t2,$t2,$t4addu $t2,$t2,$t5 # resultadd$s2,$t2,$zero# save resultli $v0,4la $a0,msg3sysc
9、all li $v0,2mtc1 $t2,$f12 syscallla $a0,msg0 # new lineli $v0,4syscalllw$ra,20($sp)lw $fp,16($sp)addiu $sp,$sp,32jr$ra 4. 除法指令如下:divideStart:srl $t2,$s0,31 srl $t3,$s1,31 sll $t4,$s0,1srl $t4,$t4,24 # expsll $t5,$s1,1srl $t5,$t5,24 # expsll $t6,$s0,9srl $t6,$t6,9ori $t6,$t6,0x00800000sll $t7,$s1,9sr
10、l $t7,$t7,9ori $t7,$t7,0x00800000sub $t4,$t4,$t5 # final expaddi $t4,$t4,127sub $t5,$t5,$t5divideCompareSign:add $t2,$t2,$t3 sll $t2,$t2,31 # final signsub $t8,$t8,$t8 # use to record divid sub $t3,$t3,$t3 # use to record remaindersub $t5,$t5,$t5 # use as counterdividecompare:bge $t5,24,dividebreako
11、ut #compare the two numberblt $t6,$t7,dividelowerdividegreater:sub $t6,$t6,$t7 #divide is lowersll $t6,$t6,1sll $t8,$t8,1addi $t8,$t8,1addi $t5,$t5,1j dividecomparedividelower:sll $t6,$t6,1sll $t8,$t8,1addi $t5,$t5,1jdividecomparedividebreakout:blt $t8,0x00800000,dividedoSllbge $t8,0x01000000,divide
12、doSrlj divideresultdividedoSll:sll $t8,$t8,1subi $t4,$t4,1blt $t8,0x00800000,dividedoSllj divideresultdividedoSrl:srl $t8,$t8,1addi $t4,$t4,1bge $t8,0x01000000,dividedoSrlj divideresultdivideresult:bgt $t4,255,divideoverFlowsll $t8,$t8,9srl $t8,$t8,9sll $t4,$t4,24srl $t4,$t4,1add $t2,$t2,$t4add $t2,
13、$t2,$t8add$s2,$t2,$zero# save resultli $v0,4la $a0,msg3 #output messagesyscall li $v0,2mtc1 $t2,$f12 syscalljdiviedend 5. 十進(jìn)制轉(zhuǎn)換為二進(jìn)制指令如下:dex2:subu$sp,$sp,32 sw $ra,20($sp)sw$fp,16($sp)addiu $fp,$sp,28sw $a0,0($fp)add$a0,$s2,$zeroadd $t9,$zero,$a0 sub $t6,$t6,$t6# set $t6=0sub $t7,$t7,$t7 # set $t7=0a
14、ddi $t5,$zero,32 # set $t5=32 as a counteraddi $t8,$zero,0x80000000 # set $t8=1000 0000 0000 0000 0000 0000 0000 0000beginLoop:addi $t5,$t5,-1# counter -and $t7,$t8,$t9srl $t8,$t8,1srlv $t7,$t7,$t5add $a0,$t7,$zero #output one bitli $v0,1syscallbeq $t5,$t6,Exist #if equals jump exist j beginLoop 6.
15、十進(jìn)制轉(zhuǎn)換為十六進(jìn)制指令如下:dex16:subu$sp,$sp,32 sw $ra,20($sp)sw$fp,16($sp)addiu $fp,$sp,28sw $a0,0($fp)sub $t0,$t0,$t0# use as countersrloop:bge $t0,8,dex16end #16addi$t0,$t0,1srl$t1,$s2,28sll$s2,$s2,4bgt$t1,9,outcharli $v0,1add$a0,$t1,$zerosyscalljsrloopoutchar:addi $t1,$t1,55# change to charli $v0,11add$a0,$
16、t1,$zerosyscalljsrloopdex16end:la $a0,msg0# new lineli $v0,4syscalllw$ra,20($sp)lw $fp,16($sp)addiu $sp,$sp,32jr$ra四、實(shí)驗(yàn)結(jié)果及分析和(或)源程序調(diào)試過(guò)程 1. 實(shí)驗(yàn)結(jié)果:本次實(shí)驗(yàn)我們以十進(jìn)制實(shí)數(shù)形式的輸入兩個(gè)浮點(diǎn)數(shù),在內(nèi)存中以IEEE 754單精度方式表示,執(zhí)行運(yùn)算操作后,以十進(jìn)制形式把結(jié)果輸出,并且可以以二進(jìn)制和十六進(jìn)制的方式顯示輸出,下圖是執(zhí)行加法運(yùn)算,并輸出二進(jìn)制形式:下圖是執(zhí)行乘法操作,并輸出十六進(jìn)制形式:減法運(yùn)算如下圖:除法運(yùn)算如下圖:當(dāng)輸入錯(cuò)誤,如除數(shù)為0時(shí),會(huì)顯示
17、錯(cuò)誤信息并退出,如下圖: 2. 實(shí)驗(yàn)分析:本次實(shí)驗(yàn)我們使用MIPS匯編指令,利用整數(shù)運(yùn)算指令來(lái)編寫了一個(gè)浮點(diǎn)數(shù)運(yùn)算程序,通過(guò)在MARS 4.4軟件上進(jìn)行調(diào)試運(yùn)行,得到了正確結(jié)果,本次實(shí)驗(yàn)實(shí)現(xiàn)了以下功能:(1) 程序提供了人機(jī)交互方式(字符界面)供用戶選擇相應(yīng)的功能;(2) 接受十進(jìn)制實(shí)數(shù)形式的輸入,在內(nèi)存中以IEEE 754單精度方式表示,支持以二進(jìn)制和十六進(jìn)制的方式顯示輸出;(3) 實(shí)現(xiàn)了浮點(diǎn)數(shù)的加減乘除運(yùn)算;(4) 沒有使用浮點(diǎn)指令,只利用了整數(shù)運(yùn)算指令來(lái)完成軟件的編寫。 3. 成員分工:加、減、乘、除四個(gè)運(yùn)算指令程序的編寫。:十進(jìn)制轉(zhuǎn)二進(jìn)制,十進(jìn)制轉(zhuǎn)十六進(jìn)制代碼的編寫。實(shí)驗(yàn)報(bào)告由兩人共同
18、完成。備注:1、教師在布置需撰寫實(shí)驗(yàn)報(bào)告的實(shí)驗(yàn)前,應(yīng)先將報(bào)告書上的“實(shí)驗(yàn)題目”、“實(shí)驗(yàn)性質(zhì)”、“實(shí)驗(yàn)?zāi)康摹薄ⅰ皩?shí)驗(yàn)項(xiàng)目?jī)?nèi)容”等項(xiàng)目填寫完成,然后再下發(fā)給學(xué)生。2、教師在布置需撰寫報(bào)告的實(shí)驗(yàn)項(xiàng)目時(shí),應(yīng)告知學(xué)生提交實(shí)驗(yàn)報(bào)告的最后期限。3、學(xué)生應(yīng)按照要求正確地撰寫實(shí)驗(yàn)報(bào)告:1) 在實(shí)驗(yàn)報(bào)告上正確地填寫“實(shí)驗(yàn)時(shí)間”、“實(shí)驗(yàn)地點(diǎn)”等欄目。2) 將實(shí)驗(yàn)所涉及的源程序文件內(nèi)容(實(shí)驗(yàn)操作步驟或者算法)填寫在“實(shí)驗(yàn)過(guò)程或算法(源程序)”欄目中。3) 將實(shí)驗(yàn)所涉及源程序調(diào)試過(guò)程(輸入數(shù)據(jù)和輸出結(jié)果)或者實(shí)驗(yàn)的分析內(nèi)容填寫在“實(shí)驗(yàn)結(jié)果及分析和(或)源程序調(diào)試過(guò)程”欄目中。4) 在實(shí)驗(yàn)報(bào)告頁(yè)腳的“報(bào)告創(chuàng)建時(shí)間:”處插入完成實(shí)驗(yàn)報(bào)告時(shí)的日期和時(shí)間。5) 學(xué)生將每個(gè)實(shí)驗(yàn)完成后,按實(shí)驗(yàn)要求的文件名通過(guò)網(wǎng)絡(luò)提交(上載)到指定的服務(wù)器所規(guī)定的共享文件夾中。每個(gè)實(shí)驗(yàn)一個(gè)電子文檔,如果實(shí)驗(yàn)中有多個(gè)電子文檔(如源程序或圖形等),則用WinRAR壓縮成一個(gè)壓縮包文檔提交,壓縮包文件名同實(shí)驗(yàn)報(bào)告文件名(見下條)。6) 提交的實(shí)驗(yàn)報(bào)告電子文檔命名為:“年級(jí)(兩位數(shù)字不要“級(jí)”字)專業(yè)(縮寫:計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(計(jì)科
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024正規(guī)商鋪?zhàn)赓U合同樣本
- 2024房產(chǎn)土地轉(zhuǎn)讓合同范本
- 2024專利申請(qǐng)咨詢服務(wù)合同
- 2025屆高考數(shù)學(xué)一輪復(fù)習(xí)第五章數(shù)列第二節(jié)等差數(shù)列及其前n項(xiàng)和課時(shí)規(guī)范練理含解析新人教版
- 家長(zhǎng)會(huì)邀請(qǐng)函
- 2024年國(guó)際藝術(shù)展覽交流與合作合同
- 網(wǎng)絡(luò)教育培訓(xùn)資源整合合作協(xié)議
- 網(wǎng)絡(luò)推廣與優(yōu)化服務(wù)協(xié)議
- 自動(dòng)化技術(shù)投資合同三篇
- PSB-6426-生命科學(xué)試劑-MCE
- 小學(xué)生電子產(chǎn)品安全教育:如何正確使用電腦和手機(jī)
- 建筑施工工程投入的主要施工機(jī)械設(shè)備情況描述及進(jìn)場(chǎng)計(jì)劃
- 如何應(yīng)對(duì)企業(yè)安全管理中的供應(yīng)鏈挑戰(zhàn)
- 訪問(wèn)學(xué)者管理制度
- D報(bào)告樣板設(shè)備故障的8D報(bào)告
- 2023超星爾雅舞蹈鑒賞章節(jié)測(cè)試考試答案
- 幼兒園中班數(shù)學(xué)活動(dòng)《5以內(nèi)的相鄰數(shù)》
- 有限空間監(jiān)護(hù)人制度
- 是媽媽是女兒三聲部合唱譜
- 醫(yī)療環(huán)境表面清潔與消毒管理規(guī)范 課件
- 2023年高考語(yǔ)文全國(guó)乙卷小說(shuō)《長(zhǎng)出一地的好蕎麥》講評(píng)課件26張
評(píng)論
0/150
提交評(píng)論