实验1 查看CPU的内存,用机器指令和汇编指令编程 用到的debug功能有: R命令查看,改变CPU寄存器的内容 D命令查看内存中的内容 E命令改写内存中的内容 U命令将内存中的机器指令翻译成汇编指令 T命令执行一条机器指令 A命令以汇编指令的格式在内存中写入一条机器指令 1.首先下载Dosbox和 ...
分类:
其他好文 时间:
2018-10-27 14:56:35
阅读次数:
163
实验2 用机器指令和汇编指令编程 1.实验内容1:使用debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空 (1)在使用A命令输入指令调试前,使用E命令将0021:0~0021:7连续8个字节修改为30H,31H,32H,33H,34H,35H,36H,37H,再用D命令查 ...
分类:
其他好文 时间:
2018-10-27 14:44:05
阅读次数:
211
1.使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化。 机器码 汇编指令 b8 20 4e mov ax,4e20h 05 16 14 add ax,1416h bb 00 20 mov bx,2000h 01 d8 add ax,bx 89 c3 ...
分类:
其他好文 时间:
2018-10-27 11:51:53
阅读次数:
184
四、实验结论 任务一:使用debug,将下面程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。 1.使用r命令查看各寄存器初始值。 2.使用a命令编写汇编指令。 3.使用t命令单步执行。 4.分析 此实验使用栈实现了寄存器值的交换 注:背景涂色的两行代码,在使用t命令单步执行时,同时进行。 ...
分类:
编程语言 时间:
2018-10-27 01:29:09
阅读次数:
287
实验结论 1.使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。 (1)使用e命令修改0021:0~0021:f数据,及修改后查看是否正确写入的操作: 可以看出是正确的。 (2)使用a命令输入指令: (3)执行命令: 将结果填在书上: 2.(1)使用a命令输入指令, ...
分类:
其他好文 时间:
2018-10-27 00:04:25
阅读次数:
121
1.使用Debug,将下面的程序段写入内存,逐条执行,将执行结果与实验前结果比对。 前提:用E命令将内存单元0021:0~0021:7连续8个字节数据修改为30H,31H,32H,33H,34H,35H,36H,37H. (1)实验前理论分析。 mov ax,oo21 mov ds,ax mov a ...
分类:
其他好文 时间:
2018-10-27 00:03:01
阅读次数:
163
汇编语言的组成 汇编语言发展至今,有以下3类指令组成: (1)汇编指令:机器码的助记符,有对应的机器码。 (2)伪指令:没有对应的机器码,由编译器执行,计算机并不执行。 (3)其他符号:如+,-,*,/等,由编译码识别,没有对应的机器码。 存储单元 1Byte = 8bit 1KB = 1024B ...
分类:
其他好文 时间:
2018-10-26 22:04:03
阅读次数:
138
四. 1. 实验结论 2. . 在运行试验2.中的两个单步运算操作后发现mov ax,2000;mov ss,ax;mov sp,10三个操作得到了运行。当只书写上述的前三个操作并运行时所得到的结果仍是相同 当未进行任何操作时该内存区域的数据如下图所示 在执行两次单步运算后的相应内存区域的数据与原先 ...
分类:
其他好文 时间:
2018-10-26 20:40:37
阅读次数:
160
很久没更了,忙+懒。。。难受。 实验2 (1)首先写如下的汇编指令: 下面要求写出各个寄存器的值,这里直接在图中表示,不在给出。 这里可以看到ss是2200且sp开始为0100因为开始修改了它们的值,故修改的内存地址都是SS:SP,另外栈 内的内容也两种方式来给出。第一种直接分析可得push ax ...
分类:
其他好文 时间:
2018-10-26 17:56:00
阅读次数:
228
实验任务一: 用 a 命令输入指令调试前,使用 e 命令将内存单元 0021:0 ~0021:7 连续 8 个字节数据修改为 30H, 31H, 32H, 33H,34H,35H,36H,37H 用a命令输入指令 用t命令分布执行,并记录实验数据 由实验可知数据为: mov ax,[0]; ax=3 ...
分类:
其他好文 时间:
2018-10-25 14:18:04
阅读次数:
173