- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 8086的指令系统及汇编程序设计
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * LOOP1: MOV AX,[SI];将被加数送至AX ADC AX,[DI]; 将两个数相加 INC SI;被加数偏移地址加2 INC SI INC DI;加数偏移地址加2 INC DI MOV [BX],AX;将和送入SUM单元 INC BX;加数偏移地址加2 INC BX DEC CX JNZ LOOP1 MOV AH,4CH;调用中断,返回DOS系统 INT 21H CODE ENDS END START 1. 汇编语言的工作环境 编辑程序:EDIT NOTEBOOK 汇编程序:MASM.EXE TASM.EXE 连接程序:LINK.EXE TLINK.EXE 调试程序:DEBUG.COM(EXE) EDIT MASM LINK BEBUG 源程序 .ASM .OBJ .EXE或.COM 2. 上机过程 四、汇编语言程序的上机过程 在计算机上建立和运行汇编语言时,首先要用编程程序建立汇编语言源程序(扩展名必须为.ASM); 汇编语言编写的源程序是不能直接被计算机运行的,必须经过汇编程序MASM加以汇编(翻译),把源程序文件转换成为用机器码(二进制代码)表示的目标程序文件(扩展名必须为.OBJ); 若在汇编过程中没有出现语法错误,则汇编结束后,还 必须经过连接程序LINK把目标程序文件与库文件或其它目标文件连接在一起形成可执行文件(扩展名必须为.exe)。 最后可以在DOS下直接键入文件名,就可执行该程序了,若想查看程序执行过程,可进入程序调试过程。 1. 输入EDIT 命令,进行编辑源程序; 2. 打开“开始” “程序” “附件” “命令提示符”,进入DOS系统; 3. 输入 F:, 再输入回车键(假设汇编软件MASM存在F盘根目录下); 4. 输入 CD MASM,再输入回车键,进入汇编软件系统; 5. 输入MASM A.ASM,再输入回车键(注:A.ASM为程序名称)生成目标文件A.OBJ ; 汇编语言上机步骤 6. 输入 LINK A.OBJ,再输入回车键,生成可执行文件A.exe ; 7. 输入 A.EXE,再输入回车键,执行该程序; 程序执行完后,需要通过DEBUG程序的运行,可显示或修改存储器及寄存器内容,可设置或修改存储器内容,可设置单步或设置断点,也可对存储器的目标代码进行反汇编等。通过这些操作可以查看程序的运行情况和查找错误。 要调试程序,可输入DEBUG A.EXE或者直接输入DEBUG 再键入R,可显示CPU内所有寄存器内容和标志位状态 键入U加上制定的地址,可进行反汇编 键入T=地址, 单步执行制定地址的指令 键入D, 再加上物理地址,可查询内容 键入Q,表示退出系统 * * * * * * * * * * * * * * * * * * * * * * * * * 4. 循环控制指令LOOP 循环控制指令是一组增强型的条件转移指令,用来控制一个程序段的重复执行,反复次数由CX寄存器中的内容决定,其转移方式是段内直接短转移。 指令格式为:LOOP 短标号 指令功能:这条指令用于控制反复执行一系列指令。指令执行前必须事先将反复次数放在CX寄存器中,每执行一次LOOP指令,CX自动减1。 4. 循环控制指令LOOP 如果减1后CX不为零,则转移到指令中所给定的标号处继续循环;若自动减1后CX=0,则结束循环,转去执行LOOP指令之后的那条指令。例如:LOOP AGAIN 一条LOOP指令相当于执行以下两条指令的功能:
文档评论(0)