浮点数的表示和计算文档格式.docx

上传人:b****4 文档编号:6401798 上传时间:2023-05-06 格式:DOCX 页数:14 大小:30.08KB
下载 相关 举报
浮点数的表示和计算文档格式.docx_第1页
第1页 / 共14页
浮点数的表示和计算文档格式.docx_第2页
第2页 / 共14页
浮点数的表示和计算文档格式.docx_第3页
第3页 / 共14页
浮点数的表示和计算文档格式.docx_第4页
第4页 / 共14页
浮点数的表示和计算文档格式.docx_第5页
第5页 / 共14页
浮点数的表示和计算文档格式.docx_第6页
第6页 / 共14页
浮点数的表示和计算文档格式.docx_第7页
第7页 / 共14页
浮点数的表示和计算文档格式.docx_第8页
第8页 / 共14页
浮点数的表示和计算文档格式.docx_第9页
第9页 / 共14页
浮点数的表示和计算文档格式.docx_第10页
第10页 / 共14页
浮点数的表示和计算文档格式.docx_第11页
第11页 / 共14页
浮点数的表示和计算文档格式.docx_第12页
第12页 / 共14页
浮点数的表示和计算文档格式.docx_第13页
第13页 / 共14页
浮点数的表示和计算文档格式.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

浮点数的表示和计算文档格式.docx

《浮点数的表示和计算文档格式.docx》由会员分享,可在线阅读,更多相关《浮点数的表示和计算文档格式.docx(14页珍藏版)》请在冰点文库上搜索。

浮点数的表示和计算文档格式.docx

addi$s4,$s4,0x00800000#calculatethesecondnumber

andi

$s5,$s1,

0x#s5isthesign

srl$s5,

$s5,31

$s6,$s1,

0x7f800000

#s6istheexponent

srl$s6,

$s6,23

$s7,$s1,

0x007fffff

#s7isthefraction

addi$s7,$s7,0x00800000

sub$t0,$s3,$s6

blt$t0,0,sumL1#addsub

bgt$t0,0,sumL2#subadd

beq$tO,

0,sumL3

2.减法指令如下

:

mysub:

sw$ra,

20($sp)

sw$fp,

16($sp)

addiu

$fp,$sp,28

sw$a0,

0($fp)

#calculatethefirstnumber

$s2,$s0,0x

#s2isthesign

srl$s2,

$s2,31

$s3,$s0,0x7f800000#s3istheexponent

srl$s3,

$s3,23

$s4,$s0,0x007fffff#s4isthefraction

xori

$s5,$s1,0x

#s5isthesign

$s6,$s1,0x7f800000#s6istheexponent

$s7,$s1,0x007fffff#s7isthefraction

sub$t0,

$s3,$s6

blt$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,1

$t4,24#exp

$t5,

$s1,1

$t5,24#exp#O...1frac

sll$t

6,

$s0,9

$t6,

$t6,9

ori

$t6,0x00800000

$t6,8

addi

$t4,$t4,1#0...1frac

$t7,

$s1,9

$t7,9

$t7,0x00800000

$t7,8

$t5,$t5,1

sub

$t4,127

add

$t4,$t5#finalexp

$t5,$t5

mutilCompareSign:

add$t2,$t2,$t3

sll$t2,$t2,31#finalsign

multu$t6,$t7

mfhi$t5

#regularandi$t8,$t5,0xbeq$t8,0x,mutilnextsll$t5,$t5,1

sub$t4,$t4,1

mutilnext:

sll

#IEEE754

sub$t4,

$t4,1

srl$t5,

$t5,9

#finalfraction

mutilFinal:

$t4,$t4,24

srl$t4,

addu

$t2,$t2,$t4

$t2,$t2,$t5

#result

add$s2,

$t2,$zero

#saveresult

li$v0,

4

la$a0,

msg3

syscall

2

mtc1

$t2,$f12

la

$a0,msgO

#newline

li

$v0,4

lw$ra,

lw$fp,

$sp,$sp,32

jr$ra

4.除法指令如下

divideStart:

srl$t3,

sll$t4,$sO,1

24

#exp

9

0x00800000

$t5

#finalexp

127

divideCompareSign:

add

$t2,$t2,$t3

$t2,

31

#finalsign

$t8,

$t8

#usetorecorddivid

$t3

#usetorecordremainder

#useascounter

dividecompare

bge

24,dividebreakout#comparethetwonumber

blt

dividelower

dividegreater:

$t6,$t7#divideislower

1

j

dividelower:

$t6,$t6,1

$t8,1

dividebreakout:

blt

$t8,0x00800000,dividedoSll

0x01000000,dividedoSrl

divideresult

dividedoSll:

$t8,$t8,1

subi

$t4,$t4,1

bit

0x00800000,dividedoSll

dividedoSrl:

divideresult:

bgt$t4,255,divideoverFlow

$t8,9

$t4,24

$t2,$t4

$t2,$t8

add$s2.

$t2,$zero#saveresult

li$v0.

#outputmessage

jdiviedend

5.

十进制转换为二进制指令如下:

dex2:

subu$sp,$sp,32

add$a0,

$s2,$zero

add$t9,

$zero,$a0

sub$t6,

$t6,$t6

#set$t6=0

sub$t7,

$t7,$t7

#set$t7=0

$t5,$zero,

32#set$t5=32asacounter

$t8,$zero,

0x#set$t8=10000000000000000000

000000000000

beginLoop:

addi

$t5,$t5,

-1#counter--

and

$t7,$t8,$t9

srl$t8,

srlv

$t7,$t7,$t5

$t7,$zero

#outputonebit

li$vO,1

beq$t5,$t6,ExistjbeginLoop

#ifequalsjumpexist

6.十进制转换为十八进制指令如下:

dex16:

$t0,$t0

srloop:

bge$t0,

&

dex16end

#16

addi$t0,

$t0,1

srl$t1,

$s2,28

sll$s2,

$s2,4

bgt$t1,

9,outchar

$t1,$zero

jsrloop

outchar:

$t1,$t1,55

#changetochar

11

dex16end:

la$aO,

msg0#newline

li$v0,4

Iw$ra,20($sp)

lw$fp,16($sp)

addiu$sp,$sp,32

四、实验结果及分析和(或)源程序调试过程

1.实验结果:

本次实验我们以十进制实数形式的输入两个浮点数,在内存中以IEEE754单精

度方式表示,执行运算操作后,以十进制形式把结果输出,并且可以以二进制和十六

进制的方式显示输出,下图是执行加法运算,并输出二进制形式:

Hnput.atheTarmattooutjut:

5BbinEiry&

DlOKIOaOCOOl10000000000000000000

Inputa.心P:

1.add2sulL3.mill4.div

F图是执行乘法操作,并输出十六进制形式:

Hnpiita**LlF:

1adJ

2.sul

3.niiol4.

Aiv

0.

quit

J

TkeTi.rst

Floating

value

is.25

TheSecond

1510.5

Thst

is:

l25

Inputathe

formatt

.ooutjut:

5.hinary

Kex

6

3FAC-0000

InputaOF-

1.add

卫.cut

3.mnl4.

div

o.

减法运算如下图:

IrLpiJ-td:

P1.add.

2.sub

2.mul

4_div

quit

Th-eFirstFloating

1S21&

TheSecond,floating

it:

20

Tkereasult0

InputfitheFannatU

joutput:

5binary6

Hex

6

C12M0M

InputuOF:

1.add

2,sub

3mul

4div

qpuit

除法运算如下图:

Iikputa'

Jp.1.atld2..sub3.mul4.J.ivU.quit

IlieFirstFloa-tingv3J.UA1s'

12.24

TheSecondFlaatinj^alnei

Tktreasullis'

6.12

IitputatheEQcmQtt<

joutputbiliary&

Jtex:

31000000110000111101011100001010

Input&

L'

P;

1.2.sub3=mJLJiyG.juit

当输入错误,如除数为0时,会显示错误信息并退出,如下图:

InjputaOP-1-add2.sub3.n~ul4.div0.kjpqit

lh电furstFLo且長lugval口e:

is:

1

Th*SecondFloatingvalu#is:

Error

'

■一prograuni耳finishe!

running:

一一

2.实验分析:

本次实验我们使用MIPS汇编指令,利用整数运算指令来编写了一个浮点数运算

程序,通过在MARS软件上进行调试运行,得到了正确结果,本次实验实现了以下功

能:

(1)程序提供了人机交互方式(字符界面)供用户选择相应的功能;

(2)接受十进制实数形式的输入,在内存中以IEEE754单精度方式表示,支持以二进制和十六进制的方式显示输出;

(3)实现了浮点数的加减乘除运算;

(4)没有使用浮点指令,只利用了整数运算指令来完成软件的编写。

3.成员分工

加、减、乘、除四个运算指令程序的编写。

十进制转二进制,十进制转十六进制代码的编写。

实验报告由两人共同完成。

备注:

1、教师在布置需撰写实验报告的实验前,应先将报告书上的“实验题目”、“实验性质”、“实验目的”、“实验项目内容”等项目填写完成,然后再下发给学生。

2、教师在布置需撰写报告的实验项目时,应告知学生提交实验报告的最后期限。

3、学生应按照要求正确地撰写实验报告:

1)在实验报告上正确地填写“实验时间”、“实验地点”等栏目。

2)将实验所涉及的源程序文件内容(实验操作步骤或者算法)填写在“实验过程或算法(源程序)”栏目中。

3)将实验所涉及源程序调试过程(输入数据和输出结果)或者实验的分析内容填写在“实验结果及分析和(或)源程序调试过程”栏目中。

4)在实验报告页脚的“报告创建时间:

”处插入完成实验报告时的日期和时间。

5)学生将每个实验完成后,按实验要求的文件名通过网络提交

(上载)到指定的服务器所规定的共享文件夹中。

每个实验一个电子文档,如果实验中有多个电子文档(如源程序或图形等),则用WinRAR压缩成一个压缩包文档提交,压缩包文件名同实验报告文件名(见下条)。

6)提交的实验报告电子文档命名为:

“年级(两位数字不要“级”字)专业(缩写:

计算机科学与技术专业(计科)、网络工程专业(网络)、信息安全专业(信息)、物联网工程(物联网))班级(两位数字)学号(八位数字)姓名实验序号(一位数字).doc。

如学号为、年级为2011级、专业为“计算机科学与技术”专业、班级为“02班”、姓名为“王宇”的学生,完成的第一次实验命名为:

11计科02班王宇1.Doc,以后几次实验的报告名称以此类推。

4、教师(或助教)在评价学生实验时,应根据其提交的其他实验相关资料(例如源程序文件等)对实验报告进行仔细评价。

评价后应完成的项目有:

1)在“成绩”栏中填写实验成绩。

每个项目的实验成绩按照五级制(优、良、中、及格、不及格)方式评分,实验总成绩则通过计算每个项目得分的平均值获得(平均值计算时需将五级制转换为百分制优=95、良=85、中=75、及格=65、不及格=55)。

2)在“教师评价”栏中用符号标注评价项目结果(用"

表示正确,

用X表示错误,用〜表示半对半错)。

3)在“教师评价”栏中“评价教师签名”填写评价教师(或助教)姓名。

将评价后的实验报告转换为PDF格式文件归档。

4)课程实验环节结束后,任课教师将自己教学班的实验报告文件夹进行清理。

在提交文件夹中,文件总数为实验次数X教学班学生人数(如,教学班人数为90人,实验项目为5,其文件数为:

90X5=450)。

任课教师一定要认真清理,总数相符,否则学生该实验项目不能得分。

最后将学生提交的实验报告刻光盘连同实验成绩一起放入试卷袋存档。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2