摘要: 实验内容 实验一: 补全程序t1.asm,完成在屏幕上输出内存单元中的十进制两位数 ; 在屏幕上输出内存单元中的十进制两位数 assume cs:code, ds:data data segment db 12 db 0,0 ; 前一个字节用于保存商,后一个字节用于保存余数 data ends co 阅读全文
posted @ 2018-12-10 23:11 Assault_Karkand 阅读(171) 评论(1) 推荐(0) 编辑
摘要: 1.将ex5_1进行编译,连接,用debug加载,追踪。 代码如下 使用r命令观察,发现DS=075A,所以程序从076A:0开始存放。 以下即为程序返回前data的值。 用u反汇编,data段的段地址为x 2,stack段的段地址为x 1。再用g命令回到上一步,得到程序返回前cs,ss,ds的值。 阅读全文
posted @ 2018-11-26 19:58 Assault_Karkand 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 实验内容 1. 综合使用loop,[bx],编写完整汇编程序,实现向内存 b800:07b8 开始的连续16个 字单元 重复填充字数据 0403H。 下面是具体的代码 清屏后执行.exe文件,得到如下结果 将源代码程序中字数据 0403H 修改为0441H,再次运行。 可见原来的爱心变成了A 2. 阅读全文
posted @ 2018-11-19 21:52 Assault_Karkand 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 1.练习1 第一步,编写汇编源程序t1.asm,代码如下 第2步,对源程序 t1.asm 进行汇编、连接、运行、调试 (1)运行程序 看到输出的结果是36 (2)将line4 和line9 中寄存器dl 的值分别修改为 2 和 5,重新汇编->连接->运行,观察结果的变化。 输出结果变成了25 (3 阅读全文
posted @ 2018-11-18 21:10 Assault_Karkand 阅读(357) 评论(0) 推荐(0) 编辑
摘要: (1)使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。 输入以下指令 逐条执行指令: (2)仔细观察图3.19中的实验过程,然后分析:为什么 2000:0~2000:f 中的内容会发生改变? 1.前三行指令 将ss的值设置为2000;将sp的值设置为10;栈顶 2 阅读全文
posted @ 2018-10-28 22:10 Assault_Karkand 阅读(236) 评论(1) 推荐(0) 编辑
摘要: c (1) 使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化。 1.使用a命令,直接写入 可以用D命令查看内存中的内容 使用T命令逐条执行每条指令 (2)将下面3条指令写入从2000:0 开始的内存单元中,利用这3条指令计算2的8次方 mov ax, 阅读全文
posted @ 2018-10-28 21:21 Assault_Karkand 阅读(278) 评论(2) 推荐(0) 编辑