comnand17F4:0048明明明C215.........0000000900202020202020202028202017F4:005817F4:00680000000000202020202020282020202817F4:0078000000000000000008D0000080066D8CD20FF9F009AF0FE1D17P4:0000图13debug命令定义见附录1五、实验练习1、编写一个程序,把缓冲区BUF1中连续30个字节置 77H。提示:可利用LEA指令把BUF1的偏移量提取到偏移地址寄存器中,再使用寄存器间址方式访问存储单元。2、编写程序,计算式子(W*X)/Y+6),商放在Z中,余数放在R中。其中X,YZ,R和W为存放16位带符号数单元的地址。六、思考题完成实验练习,通过观察寄存器和存储器结果,验证程序设计是否正确。13
图 13 debug命令定义见附录1。 五、实验练习 1、编写一个程序,把缓冲区 BUF1 中连续 30 个字节 置 77H。 提示:可利用 LEA 指令把 BUF1 的偏移量提取到偏 移地址寄存器中,再使用寄存器间址方式访问存储单元。 2、编写程序,计算式子(W*X)/(Y+6),商放在 Z 中, 余数放在 R 中。其中 X,Y,Z,R 和 W 为存放16位带符号 数单元的地址。 六、思考题 完成实验练习,通过观察寄存器和存储器结果,验 证程序设计是否正确。 13
实验二8086/8088指令系统和寻址方式练习一、实验目的和要求目的:1、熟悉8086/8088指令系统和寻址方式。2、进一步掌握MASM6.11的基本使用方法。要求:调试所给源程序,观察每条指令执行后寄存器和存储器中内容的变化情况,并将其记录在表1中,另外也记录下自己对指令分析的结果,将二者进行对比,以此加深对数据传送指令和寻址方式的理解二、实验环境32位PC、MASM6.11软件三、实验原理8086/8088的操作数可位于寄存器、存储器或1/0端口中。寻找指令中操作数地址的方式有:1、固定寻址:操作数在CPU对某个固定的寄存器中,但指令中未给出该寄存器。14
实验二 8086/8088指令系统和寻址方式 练习 一、实验目的和要求 目的: 1、熟悉 8086/8088 指令系统和寻址方式。 2、进一步掌握 MASM6.11 的基本使用方法。 要求: 调试所给源程序,观察每条指令执行后寄存器和存 储器中内容的变化情况,并将其记录在表 1 中,另外也 记录下自己对指令分析的结果,将二者进行对比,以此 加深对数据传送指令和寻址方式的理解。 二、实验环境 32 位 PC、MASM6.11 软件 三、实验原理 8086/8088 的操作数可位于寄存器、存储器或 I/O 端 口中。寻找指令中操作数地址的方式有: 1、固定寻址: 操作数在 CPU 对某个固定的寄存器 中,但指令中未给出该寄存器。 14
2、立即数寻址:操作数就在指令中,当执行指令时,CPU直接从指令队列中取得该立即数。3、寄存器寻址:操作数在CPU的寄存器里。4、存储器直接寻址:操作数的有效地址直接在指令中给出。5、存储器间接寻址(1)基址寻址:操作数的有效地址为基址寄存器(BX或BP)的内容+位移量(2)变址寻址:操作数的有效地址为变址寄存器(SI或DI的内容+位移量(3)基址+变址寻址:操作数的有效地址为基址寄存器(BX或BP)与变址寄存器(SI或DI)的内容以及位移量三者之和确定。四、实验内容观察下列源程序中的每条指令执行后,寄存器和存储器中内容的变化情况。然后看此变化和自己对指令分析的结果是否一致,并完成表1内容。15
2、立即数寻址:操作数就在指令中,当执行指令时, CPU 直接从指令队列中取得该立即数。 3、寄存器寻址:操作数在 CPU 的寄存器里。 4、存储器直接寻址:操作数的有效地址直接在指令 中给出。 5、存储器间接寻址 (1)基址寻址:操作数的有效地址为基址寄存器(BX 或 BP)的内容+位移量 (2)变址寻址:操作数的有效地址为变址寄存器(SI 或 DI)的内容+位移量 (3)基址+变址寻址:操作数的有效地址为基址寄 存器(BX 或 BP)与变址寄存器(SI 或 DI)的内容以及 位移量三者之和确定。 四、实验内容 观察下列源程序中的每条指令执行后,寄存器和存 储器中内容的变化情况。然后看此变化和自己对指令分 析的结果是否一致,并完成表 1 内容。 15