




已阅读5页,还剩252页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理与接口技术 教案 机械系 胡杰 V2 0 1 联系方式 手机mail ucbuy 2 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 3 总体结构 信息表示第1章 4 冯 诺依曼 J VonNeumann 结构 VonNeumannarchitecture VNA 5 第零章概述 0 1本课程的目的0 2本课程不能达到的目的0 3微型计算机与单片机0 4微型计算机的基本组成和语言0 5参考书 6 第零章概述 0 1本课程的目的了解掌握 计算机的基础知识计算机的基本组成结构及工作原理信息的表示 存储 加工方式汇编语言的基本内容计算机如何与外界交互 接口 形成 从内存的角度考虑计算机中的问题针对具体问题架构一个开发系统的能力 1 2门语言 实践 掌握基本原理 调整 确定自己方向 7 第零章概述 0 2本课程不能达到的目的编写完整的相对复杂的汇编程序熟悉了解所有单片机熟悉了解大多数接口芯片能够独立开发设计单片机系统 8 第零章概述 0 3微型计算机与单片机计算机 超级计算机 巨型机 大型机 中型机 小型机 微型机 单片机巨 同时执行数百万用户的指令 一般用于国家新闻中心 E GCCTV 国防 军事大 同时执行数万用户的指令 一般较大网站的服务器属于此类小 同时执行数百用户的指令 一般学校 中小企业 办公室网络服务器微 一般单用户 也可执行数用户的指令 PC机 笔记本 工作站分类不是绝对的 高级的低端可能会与低级的高端重叠这些类型之间的基本区别通常在于其体积大小 结构复杂程度 功率消耗 性能指标 数据存储容量 指令系统和设备 软件配置等的不同 一般来说 巨型计算机的运算速度很高 可达每秒执行几亿条指令 数据存储容量很大 规模大结构复杂 价格昂贵 主要用于大型科学计算 它也是衡量一国科学实力的重要标志之一 单片计算机则只由一片集成电路制成 其体积小 重量轻 结构十分简单 性能介于巨型机和单片机之间的就是大型机 中型机 小型机和微型机 它们的性能指标和结构规模则相应的依次递减 9 第零章概述 超级计算机 10 第零章概述 11 第零章概述 12 第零章概述 13 第零章概述 大型机 大型机一般指IBMSystem360系列机 1964年IBM花费50亿美元 软硬一体不可分 14 第零章概述 小型机 多核 起源机型 sun sparc IBM的power 第一要素 安全 架构不同 sunsparc架构HPPA RISC alpha架构I O总线 网卡 显卡专用 O S sunsunSolarisHPHp unixIBMAIX厂家 IBMHP浪潮曙光 15 第零章概述 微型机发展历程 1971年Intel研制出4位字长的40041972年推出80801974 1978Intel8085 MotorolaMC6809 ZilogZ80这一时期 出现单片机1978 1981Intel8086 MotorolaMC680001985 1993Intel80386DX 80486DX1993Pentium 16 第零章概述 单片机 概念 一台独立的计算机 理论上 CPU RAM ROM 定时器 计数器 输入 输出 AD DA1974年美国仙童 Faichild 第一台单片机 F8按字长分 8位 16位 32位单片机种类多 流行的 Intel的MCS系列 MCS51 MCS96 MotorolaM68Philips NEC 日立 东芝产量 1992年5亿片 1995年30亿片 2000年60亿片国内单片机特点 1 应用少 占世界市场的百分之几 2 主要集中在空调 洗衣机 电饭煲等家电上 计算机外围 通信设备少 3 水平低 作坊式 17 第零章概述 一 单片机应用系统的构成 18 第零章概述 PC机应用系统的构成 19 第零章概述 单片机应用系统的分类 专用系统软硬件完全按照具体的应用要求配置模块化系统将典型配置做成系列模板单片单板机系统其硬件按照典型应用系统配置 并配有监控程序 20 第零章概述 一 单片机应用系统的构成 21 第零章概述 单片机的优点 原则上单片机的功能可以用其它计算机系统实现 比如在工控机的扩展槽上插入专用的硬件模板 A D D A I O扩展板 但独具如下特点 可靠性高按工业应用环境要求设计 抗干扰能力强 程序固化到ROM中 控制能力强单片机的硬件资源和指令系统具有很强的测控能力 易扩展片外具有许多供扩展用的三总线 并行 串行输入 输出出口 价格便宜广泛用于工业测控系统 自适应控制系统 数据采集系统 智能仪器仪表 智能设备 办公设备 家用电器等 22 第零章概述 单片机应用系统的开发方法 23 第零章概述 0 4微型计算机的基本组成与语言运算器CPU控制器存储器主机输入设备输出设备微型机硬件外围设备微型机系统系统软件微型机软件应用软件 24 第零章概述 硬件系统 主机 外围设备 系统软件 操作系统 Windows Unix Linux 系统软件 数据库服务器 DB2 SQLServer Oracle 中间件 WebLogic Apusic 数据管理 用户权限 基础资料 初始数据 仓存管理 采购管理 销售管理 账务处理 工资管理 固定资产 出纳管理 存货核算 会计报表 业务报表 资产报表 人事薪资报表 经营分析 缺陷 两票 工单 设备台帐 基础设置 发电MIS 制造业ERP 25 第零章概述 计算机语言机器语言 汇编语言 高级语言与硬件有关的说明语言与开发工具的区别及联系FortranPascalC C VBJavaJavaScriptC 26 第零章概述 0 5参考书 IBM PC汇编语言程序设计 清华沈美明等 编程卓越之道第一卷 深入理解计算机 电子RandallHyde韩东海译 计算机组成原理 华工高建生等 27 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 28 第一章计算机基础知识 1 1数制1 2逻辑电路1 3布尔代数1 4二进制数的运算及其加法电路二进制数的加法半加器电路全加器电路二进制减法 1 5可控反相器及加法 减法电路 1 6数据校验方式 29 1 1数制 基 数制所使用的数码的个数 如十进制的数码为0 1 2 3 4 5 6 7 8 9 所以十进制的基为10 权 每一位具有的值 比如十进制为 1 10 100 1000 表示符号 B H D Q1 为什么要用二进制 十进制2 数制之间的转换A 十进制整数 二进制 25 D 11001 B 30 1 1数制 B 十进制小数 二进制小数 0 625 D 0 101 B 31 1 1数制 C 二进制 十六进制 11010101 B D5 H前面不足的补齐0D 二进制 八进制 11010101 B 325 Q 3 8 2 2 8 1 5 8 0 208 D 32 1 1数制 3 字母与字符的编码 1 ASCII AmericanStandardCodeforInformationInterchange 用7位二进制编码表示 共128个字符 第七位 bit7用作奇偶校验 如果第7位也用于编码 则叫扩展ASCII 2 EBCDIC 发音为EB shu dic 在IBM大型机 小型机产品线中使用 它代表扩展二进制编码的十进制交换码 ExtendedBinaryCodedDecimalInterchangeCode 3 双字节字符集DBCS double bytecharactersets并不是所有字符都使用16位编码 相反 它们使用单个字节来表示大多数字符编码而只使用双字节编码来表示特定的字符 4 Unicode字符集由苹果 施乐公司创建 目前成为国际标准 MacOS Windows Linux Unix都支持 向下兼容ASCII 如果高9位为0 则为ASCII 否则为Unicode 缺点 对内存空间消耗大 指令变多 处理速度变慢 33 1 1数制 4 汉字的编码汉字用两字节表示 国标码GB2312 80 共7445个汉字为了与ASCII区别 两字节高位都为1 比如 啊 内码为 1011000010100001即B0HA1H 34 1 2逻辑电路 四种基本的逻辑电路 与 或 非 异或 35 1 3布尔代数 与 或 非 异或的运算 36 1 4二进制数的运算及其加法电路 以 为主 其余由加法变换得来 1 4 1二进制数的加法S0 A0 B0 C1二位二进制相加半加器S1 A1 B1 C1 C2S2 A2 B2 C2 C3三位二进制相加全加器S3 A3 B3 C3 C4半加器和全加器可以组成所有加法电路 而加法电路又可以组成 运算 37 1 4二进制数的运算及其加法电路 1 4 2半加器电路两个输入端 两个输出端结果 C1S0 38 1 4二进制数的运算及其加法电路 1 4 3全加器电路 39 1 4二进制数的运算及其加法电路 1 4 3全加器电路 40 1 4二进制数的运算及其加法电路 1 4 4二进制减法原码 反码 正数的反码等于原码 负数的反码等于除符号位外各位取反 补码 正数的补码等于原码 负数的补码等于相应正数取反再加1 负数的补码 反码 1 规则 1 正数的补码与原码相同2 补码的补码 原码4的原码 000001004的反码 000001004的补码 00000100 4的原码 10000100 4的反码 11111011 4的补码 11111100在PC内 整数采用补码表示 如八进制的 376 11111110charc 376 printf c c printf d c 2因为 2的补码为11111110unsignedcharc 376 printf d c 254 41 1 4二进制数的运算及其加法电路 数的表示法 42 1 0的原码有两种表示法 0 原 00000000B 0 原 10000000B2 0的反码有两种表示法 0 反 00000000B 0 反 11111111B3 0的补码只有一种表示法 0 补 00000000B 0 补 00000000B4 对10000000这个数 在补码表示法中被定义为 1285 为什么要设立补码 1 将减法变为加法2 统一正0和负0 1 4二进制数的运算及其加法电路 43 1 4二进制数的运算及其加法电路 A B A B 如 例子1 12 5 7 12的补码 5 的补码 7 5 10000101 求反后为11111010 加1后为11111011 则减法为 例子2 5 12 7 5的补码 12 的补码 7 的补码 11111001 求补 10000110 1 10000111 7 44 1 5可控反相器及加法 减法电路 45 1 6数据校验方式 1 校验目的 元器件质量问题 电路故障 信道上的噪声干扰都会导致信息传送错误 2 基本校验方法 奇偶校验 海明校验 循环校验A 奇偶校验 在编码右侧添加一位二进制 使得编码中的1的位数为奇数或偶数 分别叫奇校验 偶校验 奇偶校验只能发现奇数位错误 且不能改正 B 海明校验 N k r 2r 1k 被校验信息位数r 校验位数C 循环校验 46 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 47 第二章微型计算机基本组成电路 2 1基本概念 触发器 寄存器 存储器A 触发器 最小的存储单元 一个触发器可以保存一位二进制 为晶体管元件 B 寄存器 缓冲寄存器 移位寄存器 计数器 累加器 C 存储器 存储器由寄存器组成 可以看成一个寄存器堆 每个存储单元实际上相当于一个缓冲寄存器 48 第二章微型计算机基本组成电路 00000000H FFFFFFFFH 49 第二章微型计算机基本组成电路 2 2触发器 Trigger 重点 RS D JK触发器 50 第二章微型计算机基本组成电路 基本RS触发器 基本RS触发器是构成各种功能触发器的基本单元 所以称为触发器 触发器是由与非门交叉耦合而形成的基本RS触发器 SD称为置1端或置位端 RD称为置0端或复位端 非号表示低电平有效 51 第二章微型计算机基本组成电路 基本RS触发器有两个互补输出端Q和Q 一般用Q端的逻辑值来表示触发器的状态 Q 1 Q 0时 称触发器处于1状态 Q 0 Q 1时 称触发器处于0状态 R S为触发器的两个输入端 或称激励端 当输入信号R S不变化 即RS 11 时 该触发器必定处于Q 1或Q 0的某一状态保持不变 所以它是具有两个稳定状态的双稳态触发器 52 第二章微型计算机基本组成电路 用非与门组成基本RS触发器它的逻辑功能为 1 当R 0 S 1时 触发器置0 2 当R 1 S 0时 触发器置1 3 当R S 1时 触发器状态保持 4 当R S 0时 触发器状态不定 这种情况是不允许的 53 第二章微型计算机基本组成电路 时标 同步 触发器 Trigger 时标 同步 RS触发器时标作用 协调动作 54 第二章微型计算机基本组成电路 当CLK 0时 C D门被封锁 R 1 S 1 由基本RS触发器功能可知 触发器状态维持不变 当CLK 1时 RD R SD S 触发器状态将发生转移 55 第二章微型计算机基本组成电路 D触发器 D触发器 时标D触发器时标作用 协调动作 边沿触发的D触发器在CLK的正跳变时触发什么叫正跳变 边沿触发的D触发器 图2 7 56 第二章微型计算机基本组成电路 Q 为什么不直接将数据存在总线上 A 1 动作同步的需要2 数据需要保存一个时间段 57 第二章微型计算机基本组成电路 2 3寄存器 Register 分 缓冲寄存器 移位寄存器 计数器 累加器重点 缓冲寄存器及L门的概念 各种寄存器都是由触发器组成 只不过由于各自的附加电路不同而形成了功能不同的寄存器 58 第二章微型计算机基本组成电路 X X3X2X1X0 Q 此时数据在触发器中保持的时间有多长 注意CLK 2 3 1缓冲寄存器 59 第二章微型计算机基本组成电路 寄存器的装入门LOAD 简称L门 LOAD高电平时使数据装入 低电平时使数据自锁其中 60 第二章微型计算机基本组成电路 2 3 2移位寄存器P242 3 3计数器行波计数器同步计数器环形计数器程序计数器 图2 23COUNT端的作用 高电平则计数值 1 61 第二章微型计算机基本组成电路 2 4三态输出电路及总线结构1 三态门 E门 的概念 高阻状态的概念 A B不通 2 E门对寄存器输出数据进行控制 高电平有效 3 E L都可以附加到任何寄存器电路上 4 L门专管对寄存器的输入数据的控制 而E门专管由寄存器输出数据的控制 5 由L门 E门组成的总线结构 第二章后面内容并入第三章 62 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 63 1946年2月第一台电子数字积分计算机ENIACElectronicNumericalIntegratorAndComputer美国宾夕法尼亚大学18000多个电子管 1500个继电器 重量30t 占地170平米 每秒能计算5000次加法 第一代 电子管计算机时代 1946 1958 每秒几千次到几万次第二代 晶体管计算机时代 1958 1964 每秒几万次到几十万次第三代 集成电路计算机时代 1964 1971 每秒几十万次到几百万次第四代 大规模集成电路计算机时代 1971 现在 科学计算 数据处理 计算机控制 计算机辅助技术 人工智能 第三章微型计算机的基本工作原理 64 冯 诺依曼 J VonNeumann 结构 VonNeumannarchitecture VNA 第三章微型计算机的基本工作原理 65 3 1系统总线总线是一组信号线的集合 分 地址总线 数据总线 控制总线不同的系统其总线设计不尽相同 但上面传送的信号是类似的 第三章微型计算机的基本工作原理 66 CON LAEALBEBLCECLDED表格2 3 第三章微型计算机的基本工作原理 67 3 1 1数据总线用于各个组成部分之间交换数据 何为32位 64位计算机 内总线 寄存器位数 外总线概念由数据总线宽度和寄存器位数中较小的一个来决定 64位CPU已上市 但与之配套的其它的硬件和软件 目前上市的并不太多 所说的64位计算机也只能是准64位计算机了 第三章微型计算机的基本工作原理 68 3 1 2地址总线CPU和 哪个内存位置或I O设备 进行数据交换 为了唯一标识每个内存位置与I O设备 为它们分配一个唯一的地址 要访问内存或I O设备时 将对应的地址放到地址总线上 第三章微型计算机的基本工作原理 69 Q 1 计算机内存大小如何计算的 2 为什么没有508M的内存条 道格拉斯 亚当斯 DouglasAdams 的 银河系漫游指南 中估计宇宙有276个粒子 那么264如何表示呢 第三章微型计算机的基本工作原理 70 16 8RAM图 第三章微型计算机的基本工作原理 71 只读存储器ROM 书本上的2 7 1节 1 为什么A2 A1 A0要并一个非门 不用可以吗 2 二极管的位置是如何确定的 3 m n的含义 4 如何读出ROM中的某个单元的数据 例子2 1 三个控制字所代表的动作 第三章微型计算机的基本工作原理 72 第三章微型计算机的基本工作原理 73 第三章微型计算机的基本工作原理 74 第三章微型计算机的基本工作原理 75 第三章微型计算机的基本工作原理 76 第三章微型计算机的基本工作原理 77 3 1 3控制总线控制CPU和其它部分的通信 包括 系统时钟信号线 中断信号线 字节使能信号线 状态信号线等 第三章微型计算机的基本工作原理 78 3 2大端组织与小端组织 80 x86CPU会将一个字或双字的最低字节存储在内存中的某个地址 而高端字节则连续地存储在后续更大的地址中 叫小端组织 小端组织 乔纳森 威斯夫特 JonathanSwift 的作品 格列佛游记 Gulliver sTravels 小人国的居民们争吵不决鸡蛋是应该从小的一端打开还是应该从大的一端打开 第三章微型计算机的基本工作原理 79 3 2大端组织与小端组织 苹果Macintosh及大多数非80 x86的Unix系统使用大端组织 大端组织 TCP IP与其他一些网络协议都使用大端格式 而其它一些标准 比如通用串行总线 UniversalSerialBus USB 传输数据的时候 就是使用的小端格式 第三章微型计算机的基本工作原理 80 3 3系统时钟 1 系统时钟是控制总线上的一个电气信号 它周期性地在0和1之间交替变换 2 CPU的所有活动都是由时钟信号的边沿 edge 上沿rising和下沿falling 来同步的 系统时钟大部分时间都处于0或1 而只有极少的时间用来在两者之间切换 3 系统时钟在0 1之间改变的频率就是系统时钟频率 systemclockfrequency 4 系统时钟从0切换到1再从1切换到0所需的时间被称为时钟周期 clockcycle 5 时钟周期T 1 时钟频率fCPU为1GHZ 则T为1纳秒 即十亿分之一秒 第三章微型计算机的基本工作原理 81 3 3 1内存访问与系统时钟 1 内存访问就是一个与系统时钟同步的操作 也就是说 内存访问的频度不可能快于每个时钟周期一次 内存访问时间越长 性能就越差 2 由于CPU比内存设备要快得多 因此基于CPU构建的系统通常会使用另一个时钟 总线时钟 busclock 总线时钟是CPU速度的一个分数 一般为800MHZ 500MHZ 400MHZ等等 3 通过插入等待状态来同步 第三章微型计算机的基本工作原理 82 3 3 2高速缓存内存 1 一级缓存处于CPU内 2 二级缓存处于主板上 第三章微型计算机的基本工作原理 83 3 4微型计算机结构的简化形式 1 程序计数器PC2 存储地址寄存器MAR3 可编程序只读存储器PROM4 指令寄存器IR5 控制部件CON6 累加器A7 算术逻辑部件ALU8 寄存器B9 输出寄存器O10 二进制显示器D 第三章微型计算机的基本工作原理 84 第三章微型计算机的基本工作原理 85 3 5指令系统 1 LDA 将数据装入累计器A00002 ADD 进行加法运算00013 SUB 进行减法运算00104 OUT 输出结果11105 HLT 停机1111 3 6程序设计及输入方法 重点 指令表 地址分配 第三章微型计算机的基本工作原理 86 3 7指令的执行 1 机器节拍2 该原型机的所有指令的机器周期 相同的 都为6个节拍3 取指周期 3个节拍4 执行周期 3个节拍5 空周期的作用 6 CON内容如何确定 以LDAR9指令为例来说明机器运行的流程 第三章微型计算机的基本工作原理 87 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 RA RB RC RD RE RF 数据区 程序区 LDA0000ADD0001SUB0010OUT1110HLT1111 LDAR9 R9 16 00001001ADDRA RA 20 00011010ADDRB RB 24 00011011ADDRC RC 28 00011100SUBRD RD 32 00101101OUT1110 HLT1111 第三章微型计算机的基本工作原理 88 T5 T2 第三章微型计算机的基本工作原理 89 3 8控制部件 1 译码器电路 将二进制编码翻译为指令控制线 再通过CON产生动作2 控制矩阵 CM 通过执行控制线与环形计数器产生CON控制字内容 第三章微型计算机的基本工作原理 90 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 91 第四章16位微处理器 4 1微处理器概述4 28086 8088CPU的结构4 3引脚信号和工作模式4 48086 8088主要操作功能 92 4 116位微处理器概述 8088系列PC的配置 IBMPC机是美国IBM公司在1981年推出的个人计算机 机中的CPU由一个微处理机芯片8088组成 其主要性能是 系统时钟4 77MHZ 基本指令99条 机内字长16位 数据线则为8根 地址线20根 提供1M字节的寻址能力 平均运算速度为0 65MPS 兆次 秒 IBMPC机有1M字节随机存取的存储器 RAM 有40K字节只读存储器 ROM ROM中存放有BASIC解释程序及基本输入 输出软件BIOS 它们是只允许读出而不允许用户写入或修改的 IBMPC机提供了三种基本外设接口 它们是键盘 扬声器和盒式磁带 此外允许用户配置各种外部设备 如显示器 磁盘 软盘 打印机等 93 4 116位微处理器概述 冯 诺依曼 J VonNeumann 结构 VonNeumannarchitecture VNA 94 4 116位微处理器概述 Harvard结构 95 4 28086 8088CPU结构 A 外部结构 96 4 28086 8088CPU结构 B 内部结构 97 4 28086 8088CPU结构 4 2 1执行部件EU 1 通用寄存器 16 8位用 AX BX CX DX Accumulator Base Count Data 2 专用寄存器 只能以16位使用 BP BasePointer 基址指针寄存器 与SS联用来确定堆栈段中某一单元地址 SP StackPointer 堆栈指针寄存器 指示栈顶的偏移位置 SI SourceIndex 源变址寄存器 DI DestinationIndex 目的变址寄存器 SI DI与DS联用 确定数据段中某单元位置 98 4 28086 8088CPU结构 4 2 2总线接口部件BIU 1 CS DS ES SSCode Data Extra StackSegmentRegister16位 2 指令指针寄存器IP16位 存放代码段中的偏移地址 IP指向下一条将运行指令的地址 而不是正在运行指令的地址 3 指令队列 4 地址加法器 20位BIU EU的分工 A BIU负责与存储器接口 即8088与存储器之间信息传送 BIU从内存中取出指令 指令队列取出数据 EUB 负责指令的执行 99 4 28086 8088CPU结构 指令执行的两种方式 100 4 28086 8088CPU结构 4 2 3存储器结构表示1M要20根地址线2 20 1M但寄存器都是16位的 最多能表示64K 如何表示1M呢 段基址 偏移地址 CS IP CS 16 IP CS左移四位 IP对CS取值有何要求 即对段的起始地址有何限制 不能起始于任意地址 必须从小段首地址开始 实际上是取段地址的高16位赋给CS 如果为20378H 则取2037H赋给CS 那么8就会丢失 小段 从0开始 每16字节为一小段000000000100002 0000E0000F000100001100012 0001E0001F000200002100022 0002E0002F FFFF0FFFF1FFFF2 FFFFEFFFFF只能取小段首地址为段基址 因为低4位为0 在1M中 共64K个小段首地址 64K 16 1024K 1M逻辑地址 物理地址的概念 及换算关系见P77 要注意的几点 1 段可重叠 2 段可任意大小 即允许每段的大小可根据实际来分配 不一定要64K 3 如果某个的段大于64K 则在运行过程中必须动态修改段寄存器的内容 101 4 28086 8088CPU结构 4 2 4总线的工作周期1 8088中 一个基本总线周期 四个时钟周期 T1 T2 T3 T4 Tw 一个时钟周期 1 主频率2 总线周期的目的 协调个部分的动作 102 4 3引脚信号和工作模式 P794 3节 103 4 48086 8088主要操作功能 4 4 1系统的复位和启动操作如何复位系统 系统复位时 各寄存器的状态是什么 系统是如何启动的 4 4 2总线操作总线读操作 指CPU从存储器或外设端口读取数据总线写操作 指CPU把数据写入存储器或外设端口 104 4 48086 8088主要操作功能 1 总过程 准备地址信息 T1 作准备 送RD信号 T2 将数据从RAM取到数据总线上 T3 从数据总线上取得数据 T4 2 以指令MOVAX 1234 0001H 讲述一个完整的读操作 3 注意 RD低电平为读 高电平为写 高阻状态的含义 ALE信号为地址锁存信号 105 4 48086 8088主要操作功能 总线读操作 时序图如下 106 4 48086 8088主要操作功能 作业P79第1 2 4 5 11 13题 107 目录 Agenda 第零章概述第一章计算机基础知识第二章微型计算机基本组成电路第三章微型计算机的基本工作原理第四章16位微处理器第五章汇编语言与汇编程序第六章汇编语言程序设计第七章输入输出与接口技术概论第八章中断技术第九章常用可编程接口芯片 8255 8253 第十章A D D A转换器接口第十一章串行通信接口 108 第五章汇编语言与汇编程序 5 0符号指令中的表达式5 18086 8088的指令格式与寻址方式5 2传送类指令5 3数据操作类指令5 4串操作指令5 5控制类指令5 6补充材料一 关于标志位5 7补充材料二 十进制调整指令5 8补充材料三 汇编程序的调试运行 109 5 0 1汇编语言程序格式机器指令 指令 伪指令 没有对应的机器指令 不由8086 8088执行 由MASM识别执行宏指令 将一段频繁出现的程序段定义为 宏指令 5 0符号指令中的表达式 110 5 0 2伪操作 伪指令 一 数据定义及存储器分配伪操作 格式 变量 伪指令oper1 oper2 注释 1 DB DW DD DTDW DD可以存放偏移的地址或完整的地址A1DB10 4 10hA2DW100 100h 5A3DD3 20 0FFFDH 5 0符号指令中的表达式 111 A1DB HELLO A1DW AB CD EF 第六章汇编语言程序设计 112 A1DD AB CD 5 0符号指令中的表达式 113 3 分配空间但不存数据DUP 复制操作A1DB0 0A2DW 52 5 0符号指令中的表达式 114 3 A1DB2DUP 0 1 2 A2DB100DUP 5 0符号指令中的表达式 115 4 DW DD可存变量或标号的偏移地址或整个地址A1DWPAR1A2DDPAR2 5 0符号指令中的表达式 116 5 变量的类型属性问题 字节DB 1 字DW 2 DD 4 DQ 8 DT 10 隐含属性表确定指令是字指令还是字节指令OPER1DB1 2OPER2DW1234H 5678H MOVAX OPER1 1 MOVAX WORDPTROPER1 1 AH 3402HMOVAL OPER2 MOVAL BYTEPTROPER2 AH 34H 5 0符号指令中的表达式 117 二 表达式赋值伪操作EQU程序中多次出现同一表达式 方便起见 给其赋一个名字 DATAEQUHIGH 12BETAEQUALPHA 2CONSTEQU256EMP 7EMP EMP 1 5 0符号指令中的表达式 118 三 段定义伪操作 SEGTMENT ENDScs segSEGTMENTASSUMEDS start MOVAX MOVDS AX MOVAX 4C00HINT21Hcs segENDSENDstart 5 0符号指令中的表达式 119 四 程序开始和结束操作NAMETITLEEND 标号 第六章汇编语言程序设计 120 5 18086 8088的指令格式与寻址方式 5 1 1简单程序TITLEabsoltdata segSEGMENToper1DW12oper2DW230resultDW 分配存储空间 但不存入数据data segENDScode segSEGMENTASSUMTCS code seg DS data seg 明确段与寄存器之间的关系 但并不能把段地址装入段寄存器 必须通 过MOV指令装入 start MOVAX data segMOVDS AXMOVAX oper1ADDAX oper2JGEstoreNEGAXstore MOVresult AXHLTcode segENDSENDstart 121 5 18086 8088的指令格式与寻址方式 5 1 2寻址方式1 立即寻址操作数存放在指令中 叫立即数MOVAL 5 AL 05HMOVAX 3046H AX 3046H2 寄存器寻址操作数在寄存器中 MOVAX BX若 AX 3064H BX 1234H 则 AX 1234H BX不变 122 5 18086 8088的指令格式与寻址方式 3 直接寻址在PC机中 将操作数的偏移地址叫有效地址 EffectiveAddress 在直接寻址中 EA在指令中 由EA 物理地址 访问存储器取数 即 16 DS EA 默认位DS 可以取其它段例 MOVAX 2000H 其中 DS 3000H则 AX 32000 3050H 123 5 18086 8088的指令格式与寻址方式 4 寄存器间接寻址操作数在存储器中 其有效地址由寄存器BX BP SI DI之一指出 1 SI DI BX间接寻址 则数据在DS中MOVAX SI 如果 DS 2000H SI 1000H则结果 AX 50A0H 50 A0 124 5 18086 8088的指令格式与寻址方式 2 BP间接寻址 数据在SS中MOVAX BP 如果 SS 3000H BP 2000H则结果 AX 62B0H 125 5 18086 8088的指令格式与寻址方式 5 变址寻址 寄存器相对寻址方式 变址 以指定寄存器内容 加上指令中给定的8位或16位位移量 作为操作数的地址 同样 BX SI DI DSBP SSEA BX SI DI BP 8 16位位移量 MOVAX COUNT SI 或MOVAX COUNT SI COUNT是符号地址如果 DS 3000H SI 2000H COUNT 3000H则结果为 AX 1234H 126 5 18086 8088的指令格式与寻址方式 6 基址加变址的寻址方式基址寄存器 BX BP变址寄存器 SI DI如果寄存器中有BP 则使用SS段 其余使用DS段 MOVAX BX DI 或MOVAX BX DI 如果 DS 2100H BX 0158H DI 10A5H 则 AX 1234H 127 5 18086 8088的指令格式与寻址方式 7 相对基址加变址的寻址方式BX或BP SI或DI 8或16位的位移量如 MOVAX MASK BX SI 或MOVAX MASK BX SI 或MOVAX MASK BX SI 如果 DS 3000H BX 2000H SI 1000H MASK 0250H则 AX 33250H 1234H 128 5 18086 8088的指令格式与寻址方式 作业 1 下列各数均为用十六进制表示的8位二进制数 请说明当它们分别被看作是用补码表示的数或字符的ASCII时 他们所表示的十进制数及字符是什么 1 4F 2 2B 3 73 4 592 给定 BX 637DH SI 2A9BH 位移量D 7273H 试确定在以下各种寻址方式下的有效地址是什么 1 立即寻址 2 直接寻址 3 使用BX的寄存器寻址 4 使用BX的间接寻址 5 使用BX的寄存器相对寻址 6 基址变址寻址 7 相对基址变址寻址3 写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令 要求用以下几种寻址方式 1 寄存器间接寻址 2 寄存器相对寻址 3 基址变址寻址 129 5 18086 8088的指令格式与寻址方式 作业 1 下列各数均为用十六进制表示的8位二进制数 请说明当它们分别被看作是用补码表示的数或字符的ASCII时 他们所表示的十进制数及字符是什么 1 4F 2 2B 3 73 4 59O sY2 给定 BX 637DH SI 2A9BH 位移量D 7273H 试确定在以下各种寻址方式下的有效地址是什么 1 立即寻址7273H 2 直接寻址7273H 3 使用BX的寄存器寻址637DH 4 使用BX的间接寻址637DH 5 使用BX的寄存器相对寻址0D5F0H 6 基址变址寻址8E18H 7 相对基址变址寻址1008BH3 写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令 要求用以下几种寻址方式 1 寄存器间接寻址MOVBX BLOCK 10MOVDX BX 2 寄存器相对寻址MOVBX BLOCKMOVDX BX 10 3 基址变址寻址MOVBX BLOCKMOVSI 0AHMOVDX BX SI 130 5 18086 8088的指令格式与寻址方式 假定 DS 2000H ES 2100H SS 2100H SI 00A0H BX 0100H BP 0010H 数据段中变量名VAL的偏移地址值为0050H 试指出下列源操作数字段的寻址方式是什么 其物理地址值是多少 1 MOVAX 0AH 8 MOVAX SI 2 MOVAX BX 9 MOVAX BX 10 3 MOVAX 100H 10 MOVAX VAL BX 4 MOVAX VAL 11 MOVAX BX SI 5 MOVAX BX 12 MOVAX VAL BX 6 MOVAX ES BX SI 7 MOVAX BP 131 5 18086 8088的指令格式与寻址方式 现有 DS 2000H BX 0100H SI 0002H 20100 12H 20101 34H 20102 56H 20103 78H 21200 2AH 21201 4CH 21202 B7H 21203 65H 试说明下列各条指令执行完后AX寄存器的内容 1 MOVAX 1200H 2 MOVAX BX 3 MOVAX 1200H 4 MOVAX BX 5 MOVAX 1100 BX 6 MOVAX BX SI 7 MOVAX 1100 BX SI 132 5 2传送类指令 5 2 1通用数据传送指令MOVPUSHPOPXCHGXLAT1 MOVDST SRC DST SRC 在CPU内或CPU与存储器间传送字或字节注意 1 DST不能用立即数或CS或IP 2 除SRC为立即数情况外 两操作数中必有一个为寄存器 即不允许在2个内存单元传数 3 段地址必须通过寄存器传送 MOVAX DATA SEGMOVDS AX 4 MOV不影响标志位 133 5 2传送类指令 2 PUSHSRC执行操作 SP SP 2 SP 1 SP SRC POPDST执行操作 DST SP 1 SP SP SP 2注意 1 堆栈存取必须以字位单位 不允许字节操作 2 POP不允许用CS 3 出栈时顺序相反 3 XCHG交换指令XCHGOPR1 OPR2执行操作 OPR1 OPR2 注意 1 必须有一个寄存器 不允许内存单元之间操作 2 允许字节操作 3 不影响标志位 4 XLAT换码指令 134 关于堆栈 5 2传送类指令 135 进栈操作 A SP 2 SPB AX内容送至 SP 1 SP出栈操作 A 讲 SP 1 SP内容取出至BXB SP 2 SP堆栈应用 十进制 二进制voidConversion InitStack scanf d N while N push s N 2 N N 2 while StackEmpty s pop s e printf d e 5 2传送类指令 136 5 2传送类指令 5 2 2目标地址传送指令LEA有效地址送寄存器LDS指针送寄存器和DSLES指针送寄存器和ES1 LEAREG SRC将源操作数的EA送到指定寄存器 LEAAX 2728 则 AX 2728HLEABX BP SI 则 BX BP SI的值LEAAX COUNT则MOVAX OFFSETCOUNT注意 1 源操作数必须为内存 不能MOVAX CX 2 目的操作数为REG2 LDSREG SRC REG SRC DS SRC 2 将源操作数指定的4个相连字节送到指定的寄存器及DS中去 LDSSI 10H 如果 DS C000H C0010H 0180H C0012H 2000H则 SI 0180H DS 2000H 137 5 2传送类指令 3 LESREG SRC REG SRC ES SRC 2 LESDI BX 如果 DS B000H BX 080AH B080AH 05AEH B080CH 4000H则 DI 05AEH ES 4000H注意 1 源操作数是一个内存操作数 即必须在内存中 不能为立即数方式或寄存器方式 2 REG不能用段寄存器 3 不影响标志位 138 5 2传送类指令 5 2 3标志位传送指令LAHF loadAHwithflags读取标志位SAHF storeAHintoflags设置标志位PUSHF标志位进栈POPF标志位出栈FLAG的高8位的改变可用POPF PUSHF 改变栈顶单元的某一位 再用POPF恢复 1 LAHF AH PSW的低字节 2 SAHF PSW的低字节 AH 3 PUSHF SP SP 2 SP 1 SP PSW 4 POPF SP SP 1 SP SP SP 2 139 5 2传送类指令 5 2 4输入 输出数据传送指令IN OUT用于I OPORT与CPU之间通信 这组指令仅限于用CPU的AX寄存器 外设最多有65536个I OPORT 编号位0000 FFFF 前256个I OPORT可在指令中直接传递数据 叫长格式 256时 要先把端口号放入DX寄存器中 叫短格式 1 IN长格式 INAL PORT AL PORT INAX PORT AX PORT 1 PORT 短格式 MOVDX PORTINAL DX AL DX MOVDX PORTINAX DX AX DX 1 DX 例1 INAX 28HMOVDATA WORD AX把端口28内容的AX传到存储单DATA WORD例2 MOVDX 3FCH从PORT03FCH送一个字到AXINAX DX2 OUT长格式 OUTPORT AL PORT AL OUTPORT AX PORT 1 PORT AX 短格式 MOVDX PORT DX AL OUTDX AX DX 1 DX AX 例 OUT5 AL从AL输出一个字节到端口5 140 5 3数据操作类指令 5 3 1算术运算指令1 加法指令ADD ADC Addwithcarry修改进位标志 INC increment 1 不带进位的加法指令ADDDST SRC DST SRC DST 2 带进位的加法指令ADCDST SRC DSR SRC DST CF 141 5 3数据操作类指令 3 增量指令INCOPR 可为内存操作数 OPR OPR 1一般作循环中修改指针和循环次数INCALINCAXINCBYTEPTR BX D1 500 PTR指令操作数得到类型属性例 OPER1DB1 2OPER2DW1234H 5678H MOVAX OPER1 1MOVAL OPER2 142 5 3数据操作类指令 2 减法指令SUBSBBDECNEGCMP 1 不带借位的减法指令SUBDST SRC DST DST SRC 2 带借位的减法指令SBBDST SRC DST DST SRC CF 3 DECOPR 增量指令 可为内存操作指数 OPR OPR 1DECAX 4 取补指令按位求反后加1 与求补码不同 NEGOPR即OFFFFH OPR 1 OPR OPR 5 比较指令CMPOPR1 OPR2 OPR1 OPR2 与SUB相同 不保存结果 但根据结果设置进位标志CF 143 5 3数据操作类指令 3 乘法指令MUL UnsignedMultiple 无符号数乘法IMUL SingedMultiple 带符号数乘法 1 MUL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学语文寓言故事教学反思报告
- 小学诚信主题教育班会活动设计
- 建筑企业异地施工团队绩效管理办法
- 员工劳动合同解除规范模版
- 中小企业员工职业健康安全管理
- 气象数据质量监测技术报告
- 初中化学课程知识点双向细目解析
- 电力企业设备检修管理流程
- 岗位职责细化及绩效考核管理方案
- 人力资源招聘面试技巧与注意点
- 粉尘涉爆安全培训考试题及答案
- 力量国际礼仪培训课件
- 危化品经营安全培训管理课件
- 交通安全应急处置预案公司
- 工商业分布式屋顶光伏项目投资分析
- 用户侧储能系统调度平台创新创业项目商业计划书
- 药厂生产管理培训课件
- 2021-2025年高考地理真题知识点分类汇编之地球的运动
- 2025海南国考时政试题及答案
- 2025年医院院感科医院感染试题及答案
- 线束变更管理办法
评论
0/150
提交评论