欢迎来到天天文库
浏览记录
ID:42554897
大小:402.01 KB
页数:5页
时间:2019-09-17
《卢伟《计算机原理》实验一》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、大连理工大学本科实验报告(汇编语言编程实验)课程名称:计算机原理实验学院(系):专业:班级:学号:学生姓名:20《计算机原理实验报告》实验(_)名称:运算类程序设计编程训练《用减奇数法开平方》一、实验目的:1.掌握使用运算类指令编程及调用的方法。2.掌握运算类指令对个状态标志位的影响及其测试方法二、实验要求:运用减奇数的方法计算一个整数的平方根三、编程算法与说明:8086/8088指令系统中有乘法除法指令,但是没有开平方指令。因此,开平方运算是通过程序来实现的。用减奇数法可以求得近似平方根,以获得平方根的整数部分。我们知道,N个自然数中的奇数之
2、和等于N,即:1+3=4=221+3+5=9=321+3+5+7=16=421+3+5+7+9=25=52若要做s的运算,那么就可以从S中逐次减去自然数中的奇数1、3.5、7...,一直进行到被减数为零或不够减下一个自然数为止,然后统计减去自然数的奇数个数,它就是S的近似平方根。在8086中可以用AX来储存被开方数,CX控制循坏的次数,即要得到的平方根,BX为奇数初始为1,用BX与AX相减,之后判断AL是否大于0,若小于等于0则CX小的循坏次数即为结果平方根的值,若大于0,则BX加2,再循坏相减,直到AL不大于0为止。四、实验小相关模块的连接逻
3、辑图(实验电路图):无五、程序流程图:开始初始化datal—AXdata2->BX0fex(CX)+1丄I六、程序清单:datasegmentdataldw0009hdata2dwOOOlhresultdwOOhdataendsssgsegmentstack;被开方数为9dw100dup(O)ssgendscodesegmentassumestart:cs:code,ds:data,ss:ssgmovax,datamovds,axmovax,datal;将被开方数9存入ax中movbx,1;bx初始值为1movex,0:ex初始值为0_s_lo
4、op:subax,bx;ax-bxjbs;axtasn1.asnurboAssenblerUersion3.1Copyright1988.1992BorlandInternationalssemblingfile:1.asnrrormessages:Nonearningmessage
5、s:None^sses:1emainingnenory:424k:MASM>tlink1.objurboLinkUersion2.0Copyright1987>1988BorlandInternational学生签字:
此文档下载收益归作者所有