第四章 汇编语言程序基础.ppt

  1. 1、本文档共131页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 汇编语言程序基础 带着问题去学习 把若干条汇编指令放在一起就是汇编语言程序吗? 运算结果怎样显示在屏幕上? 含有键盘输入的程序如何编写? 完整的汇编语言程序有哪些要求? 简化的程序格式是不是更方便? 4.1 第一个汇编语言程序 编写一个汇编语言程序,实现下列公式计算。假设X=4,Y=5 Z=X+Y-6 设计思路: 1)设公式中出现的三个变量X,Y,Z是16位带符号数; 2)用算数运算指令实现加减 3)指令顺序按照运算顺序书写 Z=X+Y-6 程序段: MOV AX,X ;AX?X ADD AX,Y ;AX?X+Y 加法 SUB AX,6 ;AX?X+Y-6 减法 MOV Z,AX ; Z?AX 从上面这个例子可以看出,汇编语言源程序由若干个语句组成,语句分为如下两类: 由指令组成的可执行性语句 指令语句即由8086/8088提供的指令形成的语句,它能够被翻译成机器代码,并完成一定操作功能。 由伪指令组成的说明性语句 伪指令语句也叫指示性语句,它只是为汇编程序在翻译汇编语言源程序时提供有关信息,并不翻译成机器代码。 4.2汇编语言程序上机过程 调试程序 -U 反汇编 -G 断点 执行程序 -D DS:0 查看数据段 -Q 退出 4.2汇编语言程序上机过程 用 MASM 6.11 和 CodeView 汇编和调试汇编语言程序 在 MASM 6.11 中,Microsoft 公司提供了程序员工作平台 PWB(programmer’s work bench),这是一个集成化开发环境,程序员可以方便地完成汇编语言源程序的编辑、汇编、连接调试和执行等工作。 MASM 6 提供的调试工具是 CodeView,CodeView 是一个源码级调试工具,能支持 16 位和 32 位指令的调试。其用户界面是多窗口全屏幕的,用户可方便地使用菜单和鼠标来调试程序。 4.3指令系统 重点掌握常用指令功能及应用 数据传送指令 加减法指令 逻辑运算和移位指令 控制转移指令 (后续章节介绍) 字符(串)输入输出功能实现 重点关注: 指令的汇编格式 指令的基本功能 指令支持的寻址方式 指令的执行对标志位的影响 指令的特殊要求 8086指令系统概述 Intel 8086指令系统可分成6个功能组 ① 数据传送类指令 ② 算术运算类指令 ③ 位操作类指令 ④ 控制转移类指令(后续章节介绍) ⑤ 串操作类指令 (后续章节介绍) ⑥ 处理机控制类指令 2)段定义伪指令 完整的段定义伪指令 完整的段定义伪操作 data segment ; 定义数据段 … data ends extra segment ; 定义附加段 … extra ends code segment ; 定义代码段 assume cs:code, ds:data, es:extra start: mov ax, data mov ds, ax ; 段地址 ? 段寄存器 … mov ah,4ch int 21h code ends end start 定位类型 align_type PARA BYTE WORD DWORD PAGE 组合类型 combine_type PRIVATE PUBLIC COMMON STACK AT exp 使用类型 use_type USE16 USE32 (4) 类别 ‘class’ 简化的段定义伪指令 存储模型:TINY/SMALL/MEDIUM/LARGE/HUGE/FLAT 在简单化段定义前必须指定存储模型 简化的段定义伪指令 .code [name] .data .data? .fardata [name] .fardata? [name] .const .stack [size] 段组定义伪指令 dseg1 segment word public ‘data’ …… dseg1 ends dseg2 segment word public ‘data’ …… dseg2 ends datagroup group dseg1, dseg2 cseg segment

文档评论(0)

zyg_2930102 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档