欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    中南大学 计算机原理与汇编课程设计报告.docx

    • 资源ID:97717468       资源大小:28.68KB        全文页数:11页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    中南大学 计算机原理与汇编课程设计报告.docx

    计算机原理与汇编课程设计报告贺建飕姓名: 学号: 班级: 指导老师:LEA DX,fwe MOV AH,9 INT21H JMP exit;不成功,显示错误信息,关闭文件,并结束程序cmpcx:CMP CX,512JE readf LEA DX,fcs MOV AH,9 INT21H exit:;判断实际读入的字数是不是512;如果是512,说明还没读到文件尾;显示复制成功MOV AH,3EHINT21HMOV BX,fnum_sMOV AH,3EHINT21HMOV AX,4C00HINT21H;关闭文件codeENDENDSstart程序运行结果:情况一:源文件不存在国 DOSBox 0.74f Cpu speed: 3000 cycles, Frameskip 0, Program:Please input the path and name of source file:C:ABC.TXTFile has not existed!情况二:目标文件已存在H DOSBox 0.74f Cpu speed: 3000 cycles, Frameskip 0, PrograrrPlease input the path and name of source file:C:AAA.TXTPlease input the path and name of source file:C:CCC.TXTObject file has existed?情况三:复制成功回 DOSBox 0.74, Cpu speed: 3000 cycles, Frameskip 0f Program: TEMPF.Please input the path and name of source file:C:AAA.TXTPlease input the path and name of object file:C:BBB.TXTFile copyed succeed.目标文件夹文件情况:计算机 , Windows8_OS (C:) 名称,BBB修改日期力2014/7/5 14:12大小1 KB冒AAA2014/7/5 14:121 KB1o CCC2014/7/5 14:100 KB六、总结在进行循环程序设计时,要注意循环初始化、内外层循环的控制、循环结束条件等的设 置,对整个程序的执行逻辑要非常清楚,这样可以避免死循环等意外情况的出现。多层循环 的控制更为复杂,编写代码时,要注意注释重要的循环控制部分,这样思路才不会乱。同时 要对照流程图,随时观察代码的逻辑思路是否正确。在程序的制作过程中,遇到了很多意想不到的困难,自己一个人解决起来有很大的困难, 于是也少不了同学的帮助,深刻体会到开发程序不只是一两个人就能很好地完成的,要大家 互相帮助,共同探讨问题,才能更好的解决困难。汇编语言课程设计一、设计目的:课程设计是计算机原理与汇编语言教学过程中的重要环节。本课程设计主要目的是使计 算机专业学生深入学习计算机原理与汇编语言知识,进一步提高学生计算机原理与汇编语言 综合能力和程序设计技能,锻炼运用计算机原理与汇编语言解决实际问题的能力。二、设计要求:1 .认真查阅资料,独立完成设计任务,每道题都必须上机通过。2 .独立思考,培养综合分析问题解决问题和调试程序的能力。3 .按时完成课程设计,写出课程设计报告。三、设计内容及原理设计内容:1 .使用到子程序100以内的素数,以十进制形式输出。2 .用递归计算50以内Fibonacci数,以十进制形式输出。3 .编写一拷贝程序,要求在命令行指定源文件名和目标文件名。设计原理:1 .结合几种含有特定功能的子程序以完成设计要求。2 .建立循环程序递归计算Fibonacci数。3 .根据输入判断文件是否存在并执行拷贝过程。四、设计思路1 .使用到子程序100以内的素数,以十进制形式输出。按照设计要求,可以建立3个子程序,一个判断素数子程序,一个显示素数子程序,一 个将素数以十进制形式输出子程序,然后在主程序中调用子程序,程序框架得以构建。2 .用递归计算50以内Fibonacci数,以十进制形式输出。按照设计要求,可以建立循环子程序,递归计算Fibonacci数,以十进制形式输出,再 将新Fibonacci数与50比较,大于50则退出循环,程序结束.3 .编写一拷贝程序,要求在命令行指定源文件名和目标文件名。在数据段中编写各种提示语句,在代码段中加入各种判断语句及中断跳转语句,程序运 行时,即可根据命令行输入的指定源文件名和目标文件名执行相应的功能。五、实现步骤1.使用到子程序100以内的素数,以十进制形式输出。程序代码如下:DATAS SEGMENTcount dw 0;存放素数的个数sushu db 100 dup(?);存放素数msgsushu db 'all prime numbers below 100 are:;$;显示素数的提示信息msgcount db 0dh,0ah,'count of prime numbers is:',0dh,0ah,$;2K示素数个数的提示信息 DATAS ENDSCODE SEGMENTassume cs:CODE, ds:DATASMAIN PROC FAR ;主程序入口call jisuanlea dx,msgsushu;显示素数的提示信息mov ah,9int 21hcall dispsushu;显示素数lea dx,msgcount;显示素数个数的提示信息mov ah,9int21hcall dispcount;显示素数个数mov ah, 1;按任意键退出int 21 hmov ax, 4c00h ;程序结束,返回到操作系统系统int21hMAIN ENDPjisuan proc nearmov ax, datasmov ds, axlea di,sushumov bh,0mov bl,2;求从2到100的素数、素数个数,BL从2到100变化nextll:cmp bl, 100jatjmov dl,2;如果BL不能被DL从2到BL-1整除的话,则BL为素数next 12:cmp dl,bljae nextl3mov ax,bxdiv dlcmp ah,0jz nextl4;整除则不是素数inc dljmp next 12next 13:inc count;是素数,贝1J将个数力口1mov di,bl;是素数,则存入相应单元中inc dinext 14:inc bljmp next 11tj:retjisuan endpdispsushu proc nearlea si,sushumov ex,countnext21:mov ax,count;每行10个素数sub ax,exmov bl, 10div blcmp ah,0jnz next22mov dl,Odh;每行10个素数,行末加回车换行mov ah,2int21hmov dl,Oahmov ah,2int 21hnext22:mov取出一个素数mov bh,0call displO;以十进制形式输出mov dl,20h;每个素数之间加一个空格,便于区分mov ah,2int21hinc siloop next21retdispsushu endpdispcount proc nearmov bx,count;取出素数个数call displO;以十进制形式输出retdispcount endpdisplO proc near;该子程序的作用是将BX中的数以十进制形式输出 push exmov cx,10dcall dec_divmov ex,Idcall dec_divpop exretdec_div proc nearmov ax,bxmov dx,0div exmov bx,dxmov dl,aladd dl,3Ohmov ah,2int21hretdec_div endpdisplO endpCODE ENDSEND MAIN程序运行结果:DOS BOXDOSBox 0.74r Cpu speed: 3000 cycles. Frameskip 0, Pnall prime numbers belou 100 are:OZ 03 31 3773 79 countZ5054183 of07 1143 4789 97prime13 17 19 Z353 59 61 67numbers is:Press any key2971to continue2.用递归计算50以内Fibonacci数,以十进制形式输出。程序代码如下:ASSUME CS:CODES, DS:DATASDATAS SEGMENTM2 DB 13, 10, 'Fibonacci numbers which below 50 are: $'N1 DW 0N2 DW 1DATAS ENDSCODES SEGMENTSTART:MOV AX, DATASMOV DS, AXLEA DX, M2MOV AH, 9INT 21HMOV DL/TMOV AH, 2INT 21HMOV DLJINT 21HLP:MOV AX, N1ADD AX, N2MOV BX, N2MOV N1,BXMOV N2, AXCMP N2,50JA EXITCALL OUTPUTMOV DL, 一MOV AH, 2INT 21HCMP N2,50JNA LPEXIT:MOV AH, 4CHINT 21H;返回 DOSOUTPUT:BX, 10CX,0DX,0BXDL, 'O'DXCXAX,0MOVMOVOL1:MOV DIV ADD PUSHINC CMPJNZ OLIMOV AH, 2OL2:POP DXINT 21HJA EXITLOOP OL2RETCODES ENDSEND START程序运行结果:DOS FOXDOSBox 0.74f Cpu speed: 3000 cycles, Frameskip 0, Program:ibonacci numbers which belou 50 are: 1 1 Z 3 5 8 13 Z1 34Press any key to continue3.编写一拷贝程序,要求在命令行指定源文件名和目标文件名。程序代码如下:dataSEGMENTmesslDBPlease input the path and name of source file:0DH,0AH,24Hmess2DBODHQAH,Please input the path and name of object file:1,07H,0DH,0AH,24HfnfDB0DH,0AH;File has not existed!',07H,0DH,0AH,24HfdfDBODHQAH,'Object file has existed! ;07H,0DH,0AH,24HfdeDBODH,OAH;Object path has not existed!',07H,0DH,0AH,24HfreDB0DH,0AH,'Reading error.1,07H,0DH,0AH,24HfweDB0DH,0AH;Writting error/,07H,0DH,0AH,24HfcsDB0DH,0AH;File copyed succeed.,0DH,0AH,24HfbufferDB128DB9fnameDB128 DUP (?)fnum_sDW9 *fnum_dDW9 *bufferDB512 DUP (?)dataENDScode SEGMENTASSUME CS:code,DS:data start: MOV AX,dataMOV DS,AXPUSH DSPOP ESfullO:LEA DX,messlMOV AH,9INT21HCLDMOV CX,128MOV AL,0LEA DI,fnameREP STOSBLEA DX,ftufferMOV AH,0AHINT21HMOV BL,fbuffer+l;将输入文件名的最后一个回车符换成0,因为建立的文件名不能包 括不可见字符XOR BH,BHMOV SI,OFFSET fnameADD SI,BXMOV BYTE PTR SI,0LEA DX,fnameMOV AX,3D00HINT21HJNC open;打开成功LEA DX,fnfMOV AH,9INT21HJMP fullO;重新输入open:MOV fnum_s,AX;打开成功,保存源文件号fulll:LEA DX,mess2MOV AH,9INT21HCLD ;充0,将上次输入的文件名清零MOV CX, 128 ;文件名最大128字符,包括回车符MOV AL,0LEA DI,fnameREPSTOSBLEA DX,fbuffer;输入文件名MOV AH,0AH;键盘输入到缓冲区 DS:DX=缓冲区首地址INT21HMOV BL,fbuffer+lXOR BH,BHMOV SI,OFFSET fnameADD SI,BXMOV BYTE PTR SI,0LEA DX,fnameMOV AX,3D00HINT21HJC setup;打开不成功LEA DX,fdfMOV AH,91NT21HJMP exitsetup: LEA DX,fnameMOV AH,3CH;建立新文件INT21HJNC save ;建立成功LEA DX,fdeMOV AH,9INT21HJMP exitsave: MOV fnum_d,AX;保存新文件号MOVAX,3D01H;以只写方式打开新文件INT21Hreadf:MOV BX,fnum_s ;取源文件号MOV CX,512;读出512个字符MOV DX,OFFSET bufferMOV AH,3FHINT21HJNC writef ;读成功,则写LEADX,fre ;不成功,显示错误信息,关闭文件,并结束程序MOVAH,9INT21HJMP exitwritef:MOV BX,fnum_d ;取新文件号MOV CX,AX;按实际读入字数写文件MOV AH,40HINT21HJNC empex ;写成功

    注意事项

    本文(中南大学 计算机原理与汇编课程设计报告.docx)为本站会员(太**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开