汇编语言 实验2

 

实验2

 

1、          debug的使用之 段寄存器的使用

-d 段寄存器:偏移地址 (偏移地址2)

查看从【段寄存器:偏移地址】开始到偏移地址2(默认128字节)的内存中的内容

示例:

 

 

 

-e 段寄存器:偏移地址 修改值

修改从【段寄存器:偏移地址】开始的内存中的内容

示例:

 

 

-u 段寄存器:偏移地址

显示从【段寄存器:偏移地址】开始的汇编指令

示例:

 

 

-a 段寄存器:偏移地址

从【段寄存器:偏移地址】开始写入指令

示例:

 

 

2、          实验任务

(1)     将程序段写入内存,填空,单步执行后对比结果,并分析

步骤:

l  使用 e 命令修改 0021:0~0021:f 数据,及修改后查看是否正确写入的操 作

 

 

l  使用 a 命令输入的 p74 指令

 

 

l  每一行指令单步调试,观察结果

 

 

填空结果:

 

分析原因:粗心,pop 指令后,FE+2=100,而不是10

 

(2)     将程序段写入内存,单步执行后思考比对结果

步骤:

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

 

 

l  单步调试每一行汇编指令的截图。且每一条指令单步调试后,都使用 d 命令查看 2000:0~2000:f 的值

 

 

我的理解:

前三行指令表明:

1.将2000H数值传入寄存器ax中

2.将寄存器ax的内容存入段寄存器ss中

3.将10H数值传入寄存器sp中

即修改栈顶指针的位置,留下一段空间作为栈使用

初始时,栈顶是20110H,栈底是20000H

 

经过我的观察,在涉及到修改栈寄存器ss的指令时,总是会自动执行下一步修改寄存器sp的值,可能这是一种简化的用法,使执行更方便

 

实验2——总结

 

我学到了:

栈机制,栈在内存中的存储,栈的实现:栈顶指针与栈底指针、两个栈的寄存器(段寄存器ss,寄存器sp)、push与pop操作以及操作过程中两个寄存器的内容是怎么变化的,栈顶超界的问题不会被检查出来。

 

我的感受:

栈是一个常用的结构,能方便地逆序存储数据、交换数据,其基本原理也对我们理解指针有重要帮助,好好掌握能使我们受益匪浅

---恢复内容结束---

转载于:https://www.cnblogs.com/cjh-1023/p/9867911.html

<think>好的,我现在需要处理用户关于汇编语言实验的查询。用户提到想查找与“汇编语言 实验2 ytu”相关的教程或实验报告。首先,我需要明确“ytu”可能指的是燕山大学(Yanshan University),因为其缩写常用YTU。因此,用户可能是在寻找燕山大学汇编语言实验二的资料。 接下来,我要检查用户提供的引用内容。引用[1]和[2]都涉及汇编实验,特别是子程序和条件转移指令,实验目的和任务。虽然这些引用可能不直接对应实验2,但可以推断该学校的实验可能按顺序编排,实验2可能涉及基础操作,比如数据传送、寄存器使用或简单程序结构。 用户的问题需要生成相关问题和回答,同时遵循系统级指令。我需要确保回答结构清晰,分步骤说明,并且引用正确。由于用户提供的引用中没有直接提到实验2,但引用了实验5和6,可能需要根据现有的信息推测实验2的可能内容,或者建议用户如何查找资源。 此外,用户可能遇到的困难包括找不到具体的实验2资料,因此需要提供替代方案,如检查学校资源平台、联系教师或同学,以及参考类似的实验内容。同时,生成的相关问题应围绕汇编实验的基础知识、调试方法、常见错误等,帮助用户进一步学习。 需要确保回答符合格式要求:使用中文,正确应用LaTeX格式,生成相关问题,并在引用处添加标识。同时,回答要真实可靠,避免猜测不确定的信息,建议用户通过官方渠道获取资料。</think>根据您提供的引用内容和需求,我将为您梳理汇编语言实验相关的资料获取方式,并提供实验2可能涉及的知识点参考。 ### 一、YTU汇编语言实验2可能涉及的内容推测 根据引用[1][2]中提到的"条件转移指令"和"子程序"知识点,结合高校教学规律,实验2可能包含以下内容: 1. 基础数据传送指令实践,如: $$MOV AX, 0FFFFH$$ $$ADD BX, CX$$ 2. 简单分支结构实现,使用条件转移指令: ```assembly CMP AX, BX JG L1 MOV CX, DX JMP EXIT L1: MOV CX, AX EXIT: ... ``` 3. 循环结构实现,可能涉及LOOP指令或条件跳转组合[^1] ### 二、实验资料获取建议 1. **校内资源优先** - 登录学校实验教学平台(如Blackboard、Moodle等) - 联系任课教师获取实验指导书 - 图书馆查询《微机原理与接口技术》实验手册 2. **参考类似实验内容** 引用[1]中的任务1-求最大值实验,可通过以下步骤实现: ```assembly MOV CX, 10 ; 设置循环次数 LEA SI, ARRAY ; 数组首地址 MOV AL, [SI] ; 取第一个元素 DEC CX L1: INC SI CMP AL, [SI] JAE NEXT MOV AL, [SI] ; 更新最大值 NEXT: LOOP L1 ``` ### 三、汇编实验通用注意事项 1. 调试工具推荐: - DOSBox + MASM/TASM - DEBUG工具常用命令: $$-U 100 120$$ ; 反汇编 $$-G=100 110$$ ; 执行到指定地址 2. 常见错误处理: - 偏移量越界(Error A2070) - 寄存器类型不匹配(Error A2032
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值