【汇编语言】(王爽著第三版)实验二

实验二

实验任务(一)

实验前要求我们将书本P74的程序段按理论分析,将结果进行填空。之后用Debug,将该程序段写入内存,逐条执行之后,

根据指令执行后的实际运行的结果填空如下。

mov ax,0021

mov  ax , ffff

mov  ds , ax

mov  ax , 2200

mov  ss , ax

mov  sp , 0100

mov  ax , [0]                       ;ax=3130

add  ax , [2]                        ;ax=6462

mov  bx , [4]                       ;bx=3534

add  bx , [6]                        ;bx=6C6A

push  ax                             ;sp=00FEH  ;修改的内存单元的地址是2200:00FE内容为6462

push  bx                             ;sp=00FCH  ;修改的内存单元的地址是2200:00FC内容为6C6A

pop  ax                               ;sp=00FEH  ;ax=6C6A

pop  bx                               ;sp=0100H  ;bx=6462

push  [4]                             ;sp=00FE    ;修改的内存单元的地址是2200:00FE内容为3534

push  [6]                             ;sp=00FC    ;修改的内存单元的地址是2200:00FC内容为3736

在使用a指令调试前,先使用e命令将内存单元0021:0~0021:7连续8个字节数据修改为30H,31H,32H,33H,34H,35H,36H,37H,最后用D命令查看是否正确。

接着我们再使用a指令去调试每一步的指令

实验任务(二)

使用 a命令输入 7 行指令,使用 e 命令修改 2000:0~2000:f 的值,及修改后查看的部分

单步执行调试,并且每步调试后都用d命令查看2000:0~2000:f的值:

从中我们发现前三行的指令的功能为:把0~2000:f这段空间当做栈段,初始化栈顶

mov sp,0010H   :设置栈顶的偏移地址,栈为空,sp=0010H

栈顶为2000:0010,栈底为2000:000E

小结

在完成实验的过程中,由于操作不熟练经常出现失误,例如多敲回车。。(输完一行总是情不自禁敲一个回车)每周如果只花课堂上一节课的时间去学习汇编,好像是真的不可能学好的。课外还需要自己学习。这一章实验依旧花了很久时间,自己思考的也不够,继续努力吧。

原文地址:https://www.cnblogs.com/Bellabear/p/9893361.html

时间: 2024-11-05 12:16:58

【汇编语言】(王爽著第三版)实验二的相关文章

王爽汇编第三版实验10

1. 显示字符串 1 assume cs:code 2 3 data segment 4 db 'Welcome to masm!',0 5 data ends 6 7 stack segment 8 db 16 dup (0) 9 stack ends 10 11 code segment 12 start: 13 mov dh,8 14 mov dl,3 15 mov cl,2 16 mov ax,data 17 mov ds,ax 18 mov si,0 19 call show_str

汇编语言 王爽著第三章

汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址.在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令.普遍地说,特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植.

王爽汇编第三版检测点10.5

(1)下面的程序执行后,ax 中的数值是多少? 1 assume cs:code 2 stack segment 3 dw 8 dup (0) 4 stack ends 5 code segment 6 start: mov ax,stack 7 mov ss,ax 8 mov sp,16 9 mov ds,ax 10 mov ax,0 11 call word ptr ds:[0] 12 inc ax 13 inc ax 14 inc ax 15 mov ax,4c00h 16 int 21h

汇编语言 王爽第二版 总结

汇编语言 王爽第二版 总结,所以内容都是8086的 summary asssembly ,汇编总结 why: 最初始的编程语言就是使用打孔机,打出来的0 1 代码,然后把卡片插入到电脑中运行然后 看输出结果,这种纯01的二进制代码,编写困难调试困难运行结果的显示看着也很蛋疼,就像 一个简单的"hello world",11个字符,需要11×8个二进制,并且再进行输出,就更麻烦,因为 全部都是二进制,代码.为了更高效的开发程序,就出现了汇编语言,用来代替二进制代码的输入. what: 汇

汇编语言 王爽

汇编语言 王爽 目录 汇编语言... 1 王爽... 1 第一章:基础知识 第二章:寄存器 第三章 寄存器(内存访问) 第四章 第一个程序 第六章  包含多个段的程序 第七章 更灵活定位内存的方法 第八章 数据处理的两个基本问题 第一章:基础知识 汇编语言:汇编语言是什么?为什么学习汇编语言?学习汇编语言是学习什么? 早起使用机器语言,但机器语言 晦涩难懂也难以使用,所以出现了汇编语言.即用通熟易懂的汇编指令替代全是二进制0和1的机器指令. 于是也就出现了编译器,即把汇编指令翻译成机器指令. 机

王爽《汇编语言》(第三版)实验8解析(超详细)

题目 分析程序,在运行前思考:这个程序是否能够正确返回? 运行之后再思考:为什么是这种结果? 通过这个程序加深对相关内容的理解. 贴入代码如下: assueme cs:codesg codesg segment mov ax,4c00h int 21h start: mov ax,0 s: nop nop mov di,offset s mov si,offset s2 mov ax,cs:[si] mov cs:[di],ax s0: jmp short s s1: mov ax,0 int

汇编语言(王爽)pdf

下载地址:网盘下载 <汇编语言(第2版)>是各种CPU提供的机器指令的助记符的集合,人们可以用汇编语言直接控制硬件系统进行工作.汇编语言是很多相关课程(如数据结构.操作系统.微机原理等)的重要基础.为了更好地引导.帮助读者学习汇编语言,作者以循序渐进的思想精心创作了<汇编语言(第2版)>.<汇编语言(第2版)>具有如下特点:采用了全新的结构对课程的内容进行组织,对知识进行最小化分割,为读者构造了循序渐进的学习线索:在深入本质的层面上对汇编语言进行讲解:对关键环节进行深入

汇编语言(王爽 第三版)实验十六

与原实验稍有不同,实现的功能为按下1键清屏 按下2键设置前景色为蓝色 按下3键设置背景色为白色 按下4键向上滚动一行 assume cs:code stack segment db 128 dup (0) stack ends code segment start: mov ax,stack mov ss,ax mov sp,128 mov ax,cs mov ds,ax mov ax,0 mov es,ax mov di,204h mov si,offset int9 mov cx,offse

汇编语言(王爽 第三版)实验十五

assume cs:code stack segment db 128 dup (0) stack ends code segment start: mov ax,stack mov ss,ax mov sp,128 push cs pop ds mov ax,0 mov es,ax mov si,offset int9 mov di,204h mov cx,offset int9end-offset int9 cld rep movsb push es:[9*4] pop es:[200h]