版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验一 汇编语言程序与调试,汇编语言的上机处理过程,汇编语言源程序,编辑 EDIT,汇编语言源文件 .ASM,汇编 MASM,机器语言目标文件 .OBJ,连接 LINK,机器语言执行文件 .EXE,执行,结果,汇编语言两种格式,name data segment . data ends stack segment para stack stack db 100 dup(?) stack ends code segment assume ds:data,cs:code, ss:stack,es:data,start: mov ax,data mov ds,ax mov es,ax . mov a
2、h,4ch int 21h code ends end start,汇编语言两种格式,name data segment data ends stack segment para stack stack db 100 dup(?) stack ends code segment assume ds:data,cs:code,ss:stack,es:data,aaa proc far Start: push ds mov ax,0 push ax mov ax,data mov ds,ax mov es,ax ret aaa endp . code ends end start,演示程序1,na
3、me y_to_x data segment db vvvvvvvvvvvvvvvv x dw 0fff0h,2210h,0h,0e999h y dw 4 dup(?) count dw 4 data ends stack segment para stack stack db 100 dup(?) stack ends code segment assume ds:data,cs:code,ss:stack,es:data start: mov ax,data mov ds,ax mov es,ax,lea si,x lea di,y mov cx,count sigef: lodsw or
4、 ax,ax je zero jns plus mov bx,0ffffh jmp cont1 zero: mov bx,0 jmp cont1 plus: mov bx,1 cont1: mov ax,bx stosw dec cx jnz sigef,mov ah,4ch int 21h code ends end start,演示程序2,name y_to_x data segment db vvvvvvvvvvvvvvvv inbuffer db 21 db ? db 20 dup(?) data ends stack segment para stack stack db 100 d
5、up(?) stack ends code segment assume ds:data,cs:code,ss:stack,es:data start proc far push ds mov ax,0 push ax,mov ax,data mov ds,ax mov es,ax call getcode lea si,inbuffer inc si mov cl,si again: inc si mov al,si cmp al,A jb nochan cmp al,Z ja nochan change: add al,20H mov si,al nochan: loop again mo
6、v byte ptr si+1,$,call putcode ret start endp getcode proc mov dx,offset inbuffer mov ah,0ah int 21h ret getcode endp putcode proc mov dx,offset inbuffer+2 mov ah,09h int 21h ret putcode endp code ends end start,实验步骤,1、开机,进入D盘。 2、在D:下建立一个自己的子目录(md d:zxj) 例如d:zxj,将D:MASM目录下的所有程序拷入新建的目录下(copy c:masm*.
7、* d:zxj ) 。 3、进入该目录(cd d:zxj) ,键入如下命令开始编辑程序 : d:zxjedit 文件名.asm,4、将程序保存后返回DOS进行汇编,键入如下命令: d:zxjmasm 文件名.asm 如果汇编通过,进行下一步,如果出现错误,返回3步骤,根据错误的行数进行修改,然后重新编译。 5、将程序进行连接,键入如下命令: d:zxjlink 文件名.obj 如果连接正确,进行下一步,如果错误返回3步骤进行修改,然后重新编译和连接。,6、执行程序,键入如下命令: d:zxj 文件名.exe 如果执行正确,则应该显示正确结果;如果执行错误,返回步骤3,重新编译连接和执行。 7、
8、如果不能直接从程序中找出错误,可以应用Debug程序进行调试,键入如下命令: d:zxj debug 文件名.exe 在找出错误后,重新返回3步骤,重新编译连接和执行。 8、程序全部调试完后,直接关机,按4秒以上。,Debug调试程序的主要命令,1、显示内存单元的内容 d地址 从指定地址开始,显示80H单元的内容。 2、检查寄存器单元的内容 r 3、运行程序命令 g地址 从现在的指令开始,执行到地址参数所在的指令。,Debug调试程序的主要命令,4、追踪命令 t指令数 从目前指令开始执行若干条指令后停止。 5、反汇编指令 u地址 从指定的地址开始,反汇编16个字节的指令。 5、退出指令 q 退注debug,返回dos。,注意事项,1、要带上鞋套。 2、请带一张软盘或U盘,用于保存未调试完的程序。 3、两人一组,尽量坐在23个教室内,便于管理。 4、做完程序后,老师要检查结果和源程序,然后才可以下机。 5、在上课之前将实验程序编好,程序调试完毕后保留正确的程序,将源程序和流程图写在作业本上,作为一次作业。 6、如果出现死机情况,可以按ctrl+c或ctrl+break,如果还无法起机
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年天津市北师大版高中英语高二年级写作专项练习
- 2026年江西省人教版初中英语八年级下册词汇专项练习
- 2026年琵琶记家庭伦理测试卷
- 2026年上海农行培训考试试题及答案及答案
- 2026年卫生专业技术资格考试放射医学技术(初级(师)206)相关专业知识梳理策略解析
- 服务接待流程测试题及答案
- 绿色出行理念与公共交通发展策略探讨试题
- 旅游服务与管理专业核心能力培养考试
- 医疗特种设备典型试题及答案分享
- 中小学化学实验操作能力培养考试及答案
- 《重大活动直转播安全传输保障工作指南(试行)》
- 中医医院内部管理制度
- 乡镇同级监督制度
- 浅析建设工程肢解发包
- 非物质文化遗产的现状及发展趋势【演示文档课件】
- 机电专业工程施工组织设计方案投标文件(技术标)
- 2025年职业技能大赛电工赛项理论考试指导题库含答案
- 2025医疗器械经营质量管理体系文件(全套)(可编辑!)
- 2025国家电力投资集团有限公司产业审计中心主任选聘2人笔试历年典型考点题库附带答案详解3套试卷
- 雅马哈电子琴KB-200说明书
- 2025秋北师大版(2024)初中数学七年级新生开学分班考试测试卷及答案(共三套)
评论
0/150
提交评论