用汇编语言实现算术计算和输出.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用汇编语言实现算术计算和输出

上海电力学院实验报告 计算机硬件实验课程 题目: 算术的计算与输出 班级: 姓名: 学号: 实验室注意事项: 1)保持实验室清洁,不能随意乱扔垃圾 2)不能喧哗 3)爱护设备,不能随意乱动实验箱上各种拨码开关,否则会有危险 4)实验结束要求关闭电脑,整理好实验箱,切断电源 一、实验目的 1)运用汇编语言实现算术1+2,将结果按十进制数输出 2)修改程序实现6+9,将结果按十六进制数输出 3)将上述程序的结果按十进制数输出 二、微机原理软件实验一般步骤及注释 1)PC---〉开始---〉程序---〉附件---〉命令提示符 2)cd\ ;返回c盘根目录 3)cd dvcc ;进入c:/dvcc 目录下 4) edit abc.asm ;新建,并且进入编辑abc.asm文件 5)file---〉save ;文件默认保存在c:/dvcc 目录下 6)file---〉exit ;退出编辑状态,并自动返回命令提示符界面 7)masm abc.asm ;输入回车,编译文件,如果没有出错,就会自动生成abc.obj文件 8)link abc.obj ; 数个回车,链接,不出错则生成abc.exe 9)abc ;执行 10)debug abc.exe ;debug 调试,查看内部寄存器状态、段地址、偏移地址等情况,-t 单步执行;-u 反汇编;-q 退出debug状态,返回命令提示符 三、实验所需的文件 (1)masm.exe (2)link.exe 如果将c:\dvcc目录下的这两个文件拷贝到e盘,也可以做,进入目录为:e:\ 命令方式为: e:回车。 四、实验设计与实现 1)运用汇编语言实现算术1+2,将结果按十进制数输出 解题思路:将1赋予寄存器ax,将2赋予寄存器bx中,运用add语句来实现,再将累加器内容加30h,将累加器内容输出。具体程序如下所示: data segment data ends stack segment para stackstack db 100 dup(?) stack ends code segment main proc far assume cs:code,ds:data,es:data,ss:stack start: mov ax,0 mov ax,data mov ds,ax mov es,ax mov ax,0001h mov bx,0002h add ax,bx add al,30h mov dl,al mov ah,02h int 21h mov ax,4c00h int 21h code ends end start 实验结果如下所示: 图1-1 2)编写程序实现6+9,将结果按十六进制数输出 解题思路:将6赋予寄存器ax,将9赋予寄存器bx中,运用add语句来实现,再将累加器的值再加37h,输出最终累加器里的值。具体程序如下所示: data segment data ends stack segment para stackstack db 100 dup(?) stack ends code segment main proc far assume cs:code,ds:data,es:data,ss:stack start: mov ax,0 mov ax,data mov ds,ax mov es,ax mov ax,0006h mov bx,0009h add ax,bx add al,37h mov dl,al mov ah,02h int 21h mov ax,4c00h int 21h code ends end start 实验结果如下图所示: 图1-2 3)将上述实现6+9的程序按十进制数输出 解题思路:将6赋予寄存器ax,将9赋予寄存器bx中,运用add语句来实现,将累加器中的内容除以十取余,实现将个位和十位分离。具体程序如下所示: data segment data ends stack segment para stackstack db 100 dup(?) stack ends code segment main proc far assume cs:code,ds:data,es:data,ss:sta

您可能关注的文档

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档