- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机硬件基础5指令系统与汇编语言(对应教材第4章)
* * 串装入指令 用于将内存某个区域的数据串依次装入累加器,以便显示或输出到接口。 LODS指令一般不加重复前缀。 串送存指令 格式: STOS OPRD STOSB STOSW 操作:对字节: AL ([ES:DI]) 对 字: AX ([ES:DI]) 目 标 操作数 串送存指令的应用 将内存某个区域清零 区域首地址送ES:DI 串长度送CX 置方向标志DF 0送累加器AL 执行串送存指令 开始 5.3.5 控制转移指令 转移指令 循环控制 过程调用 中断控制 1. 转移指令 无条件转移指令 无条件转移到目标地址,执行新的指令 有条件转移指令 在具备一定条件的情况下转移到目标地址 转移指令的转移原理 通过修改代码段寄存器CS及指令指针IP的内容,使程序改变顺序执行的模式,转到新的目标地址执行。 无条件转移指令 指令格式: JMP OPRD 无条件转移的目标地址可以是在当前代码段,也可在另一代码段 无条件转移指令 段内转移——目标地址与JMP指令在同一代码段 转移方式: 直接转移——指令中直接给出转移的目标地址 间接转移——由指令中的寄存器或存储器间接给出转移 目标地址 无条件段内转移 直接转移: JMP Lable 转移目标地址: 段基地址不变; 偏移地址=当前IP+位移量 JMP Label ┇ ┇ ┇ 代码段 位移量 近地址标号 无条件段内转移 间接转移: JMP BX JMP WORD PTR[BX] JMP ┇ ┇ ┇ 代码段 数据段 BX=1200 ┇ XXH XXH IP 指令码 无条件段间转移 直接转移: JMP FAR Lable 远地址标号 JMP Label ┇ ┇ ┇ 代码段1 代码段2 XXH XXH XXH XXH IP CS 无条件段间转移 间接转移: JMP DWORD PTR[BX] XXH XXH XXH XXH [BX] IP CS JMP ┇ ┇ ┇ ┇ 指令码 代码段1 代码段2 数据段 条件转移指令 在满足一定的条件下,程序转移到目标地址继续执行; 在条件转移指令之前,应有一条为条件转移指令的执行形成条件的指令(如对标志位产生影响的指令); 条件转移指令均为段内短转移,即转移范围为: -128------+127 2. 循环控制指令 控制程序在以当前IP为中心的-128~+127范围内循环执行; 循环次数由CX寄存器指定。 循环指令 无条件循环指令LOOP 条件循环指令 LOOPZ LOOPNZ 无条件循环指令 格式: LOOP Lable 循环条件: CX ≠ 0 LOOP指令的操作相当于: DEC CX JNZ Lable 条件循环指令 格式: LOOPZ Lable LOOPE Lable 循环条件: CX ≠ 0 ZF=1 格式: LOOPZ Lable LOOPE Lable 循环条件: CX ≠ 0 ZF=1 3. 过程调用和返回 段内调用 段间调用 段内直接调用 段内间接调用 段间直接调用 段间间接调用 调用指令与转移指令的比较 用于调用一个子过程; 调用前须保护断点地址; 子过程执行结束后要返回原调用处继续执行原程序 —— 断点恢复。 调用指令的执行过程 将调用指令的下一条指令的地址(断点)压入堆栈; 获取子过程的入口地址(子过程第1条指令的偏移地址); (执行子过程,含相应参数的保存及恢复); 将断点偏移地址由堆栈弹出,返回原程序。 段内调用 子过程与原调用程序在同一代码段,在调用之前只需保护断点的偏移地址 格式: CALL NEAR PROC 近过程名 断点 入口地址 段内调用例 CALL TIMRE CALL WORD PTR[SI] 直接调用 间接调用 段间调用 子过程与原调用程序不在同一代码段,在调用之前需保护断点的段基地址和偏移地址。 断点地址的保护是先将断点的CS压栈,再将IP压入堆栈。 指令格式: CALL FAR PROC 段间调用例 CALL FAR TIMRE CALL DWORD PTR[SI] 返回指令 从堆栈中弹出断
您可能关注的文档
最近下载
- 玉米全程机械化技术课件.pptx VIP
- 大学生职业规划大赛《舞蹈学专业》生涯发展展示PPT.pptx
- 2024中国网球市场和网球人群洞察报告.pdf VIP
- PMC部经理任命书.docx VIP
- (高清版)B-T 4798.3-2023 环境条件分类 环境参数组分类及其严酷程度分级 第3部分:有气候防护场所固定使用.pdf VIP
- 矿物绝缘电缆.pptx VIP
- 2025年杭州青少年活动中心公开招聘工作人员2人笔试备考试题及答案解析.docx VIP
- GB 19577-2024 热泵和冷水机组能效限定值及能效等级.docx VIP
- CCAA认证通用基础合格评定[98].pdf VIP
- 《网店运营与管理》电子商务专业全套教学课件.pptx
文档评论(0)