第章微型计算机的基础知识PPT课件.ppt_第1页
第章微型计算机的基础知识PPT课件.ppt_第2页
第章微型计算机的基础知识PPT课件.ppt_第3页
第章微型计算机的基础知识PPT课件.ppt_第4页
第章微型计算机的基础知识PPT课件.ppt_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理及应用 北京科技大学理工类 非计算机专业 相关专业适用 计算机与通信工程学院 公共邮箱 ustbscce 口令 scceustb韩伯涛1352288310362334820 1 简单交通信号管理 东西和南北各安装信号灯两个方向的通行时间不同由绿变红时应首先黄灯亮变灯时应首先闪烁多次有等候时间的显示允许警察中断正常顺序 手动指挥 2 图示 驱动 驱动 8段译码驱动 8段译码驱动 接口芯片 CPU 存储器 CB DB AB 手动开关 选择CPU找到并取得指令构造存储器执行指令编写程序指令处理数据选择接口芯片传送数据信号选择总线控制外设工作 3 简单的水温控制问题 控制1升水的水温控制温度为 80 90 0C 10C十进制数显示实际水温用电阻丝加热 测试并取得水的温度传送水温信号执行指令 计算处理发送电阻丝加热操作信号 4 图示 水温显示 8段译码驱动 接口芯片 CPU 存储器 CB DB AB 水槽 电阻丝加热 继电器控制 传感器 A D转换 第二章 CPU的内部结构 外部特征及工作方式 第三章 指令系统与汇编语言 第五章 存储器的结构原理与设计 第六章 接口及数据的输入输出管理方式 第七章 中断及中断控制接口芯片 第八章 输入输出接口芯片 5 本章主要介绍微型计算机基本知识微型计算机的功能组成及工作原理微型计算机系统中数据的编码方式微型计算机系统中的数值运算 第1章微型计算机的基本知识 6 冯 诺依曼原理 采用二进制代码表示数据 程序存储 由运算器存储器控制器和输出输入设备等功能单元组成 冯 诺依曼原理 计算机的基本工作原理 在计算机内部使用二进制数 即用二进制数码表示数据和指令 程序数据 指令都必须最终转换为二进制数码在物理上 必须使用有两个稳定物理状态的介质 存储记录二进制数码 程序存储是诺依曼原理的核心 事先确定计算机应进行的操作和该操作所需要的有关数据 将数据和处理数据的程序指令共同存入计算机 计算机 获得了 运算所需要的 知识 和 方法 计算机将在该程序的控制下 自动 地工作 7 CPU的基本功能 运算与控制 数据运算根据程序要求 完成各种运算指令控制程序是由一系列的指令组成的序列 指令控制即控制程序的执行顺序操作控制一条指令的功能往往是由若干个组件的操作组合实现 CPU负责分析指令 并产生相应的操作信号 把操作信号送往相应的组件 控制这些组件完成相应的操作时序控制对各组件的操作进行时间上的定时 控制各个操作按时序协调进行 8 微处理器内部结构示意 控制信号 程序计数器PC 9 程序与指令的执行过程 控制器将程序计数器中的地址送至地址寄存器MAR 并发出读命令 存储器根据此地址取出一条指令 经过数据总线送入指令寄存器IR 指令译码器对IR中的指令进行译码分析 确定该指令的操作功能和需要执行的操作内容步骤 控制逻辑阵列向存储器 运算器等等部件发出操作命令 执行指令操作码规定的操作 保存此次运算的结果 修改程序计数器的内容 为取下一条指令做准备 程序及指令事先调入并存储在内存中程序计数器PC中保存着将要执行的指令的地址 10 指令的执行过程 000020 000020 000021 CLA CLA 000000 ADDAX 30 ADDAX 30 000006 000006 000006 000006 000021 000030 传送地址 读存储器 执行运算 下条指令 显示 存储 11 微型计算机系统 以微型计算机为主体 配上系统软件和外部设备以后 就构成完整的微型计算机系统 12 数制的意义 按进位的原则进行计数 称为进位计数制 简称 数制 数制的三要素及意义进位基数R 逢R进一数码 或称为数符 使用哪些字符表示数位权值 一个数字在某个固定位置时的值 13 数的书写问题 14 不同数制下数值转换 十进制数 二进制数 八进制数 十六进制数 整数部分 除2取余小数部分 乘2取整 按权展开相加 三位幷一位 一位拆三位 四位幷一位 一位拆四位 按权展开相加 按权展开相加 15 二进制的运算规则 16 二进制数算术运算举例 17 二进制数逻辑运算举例 例如 a 1100 b 0110进行运算 a b a b a a b1100110011001100 0110 0110逻辑非 01101110010000111010 逻辑运算按位进行 不同位之间不存在任何联系而算术运算中位之间可能有进位或借位 18 数据在计算机中的表示 按冯氏原理 在计算机中 非二进制形式的数据信息 必须转换为二进制代码形式不同类型的数据信息的表示方法不同字符型数据转换为 ASCII码其中的数字字符还可以转换为 BCD码数值型数据转换为 二进制数值 19 ASCII码的编码规则 用8位二进制代码表示一个字符 即用一个字节存储一个字符最高为取0 后7位为编码值余下的7位可给出128个二进制编码即00000000 01111111可以表示128个字符构成标准ASCII码字符集 128个字符包括 95个对应于键盘上能输入并可显示输出的95个字符 编码值为32 126 33个 0 31和127 表示操作控制码 20 ASCII编码表 21 BCD码 十进制数字字符编码 十进制的数字字符可以表示为ASCII码 也可以特殊的表示为BCD码用4位二进制数表示一位十进制数 该4位二进制数码的值与所表示的十进制数的值相同例 5 0101 9 1001 2 0010基本依据是4位二进制数码的位权值 又称为8421码 22 BCD码的特殊意义 在计算机中 一组二进制的代码一般可分为两种意义一种是表示某字符的编码 称为码 一种是表示某个数的数值 称为值 值是可以进行运算的 而码则无此计算意义BCD码既是码 表示阿拉伯数字字符BCD码也是值 表示十进制的数值 可运算 23 BCD码运算例 23 22 4500010111 00010110 0010110117H 16H 2DHBCD码方式0010001123 00100010220100010145 24 BCD码运算例 56 55 111二进制方式 00111000 00110111 01101111十六进制方式 38H 37H 6FHBCD码方式 010101100101010110101011这显然是错误 错误发生在 当计算结果大于9而需要低四位BCD码向高四位BCD码进位时原因 4位2进制数的进位规则是16进1 而BCD码要求是10进1修正 当BCD码运算有进位时 即大于9时 需在实际结果中加6 25 数值的二进制表示方法 在计算机中 数值的表示比较复杂数值有正数和负数之分将涉及如何表示正负号的问题原码 反码和补码数值有整数和实数之分将涉及小数点的表示问题定点数与浮点数 11010101100011110这个数的值是多少 26 数值的二进制表示问题 数值 真值 机器数 无符号数 带符号数 原码 反码 补码 数值在计算机中的表示形式称为 机器数 真数的符号位被符号化后而成为 机器数 数值本身的实际值称为 真数 27 52 0110100 00110100符号位数值位 绝对值 52 0110100 10110100 真值 机器数 真值与机器数例 28 无符号数与带符号数 用若干位二进制数的最高位表示符号 用其余的数位表示数值的大小 则称为带符号数的表示方法 所表示的数就称为带符号数如将全部有效位都用来表示数值的大小 则称为无符号数的表示方法 所表示的数就称为无符号数 机器数11001011无符号数 其真值为203带符号数 则真值为 75 29 带符号数的表示形式 在计算机技术中 带符号数可具有三种不同的表示形式原码反码补码 30 原码的意义 最高位为符号位 0表示正数 1表示负数 剩余位为数值位其数值位与其对应真值的绝对值数值位相同例 真值 x1 1010100Bx2 1010100B机器数 x1 原 01010100 x2 原 11010100特点 表示简单 直观加减运算复杂 31 原码运算的复杂化问题 计算 19 22 00010011 00010110可以直接进行计算 但是若计算 19 22 10010011 00010110不能直接计算 要保证计算的正确性 需要判断符号是否相同 如果相同 则结果符号不变 并进行绝对值相加如果不同 则结果取绝对值大的数的符号 并进行绝对值相减 32 原码运算的复杂化问题 对于两个带符号数进行减运算 即异号相加 问题时 如果简单地直接相减 或处理不当 就可能出现计算机错误 而加运算 同号相加 则一般不会出现类似的问题即 在某些情况下原码不能直接进行运算为了简化在计算机中进行的运算 除原码之外 又引入了 补码 和 反码 的意义 33 反码的意义 正数的反码与原码相同 符号位为0负数的反码的符号位为1 数值位为原码的数值位 按位取反 4 原 4 反 00000100 4 原 10000100 4 反 11111011对于 一个8位的二进制 负数X 其反码为 X 反 255 X 34 补码的意义 假设一个计数系统可以表示的数的范围为100则100 80 100 20称 20和 80 关于100是互补的借助补码 可将减运算就可转换为加运算100是数的最大范围 量程 称为 模 例 对于钟表而言 从4点起 逆时针拨动3个刻度与顺时针拨动9个刻度的效果是一样的 都到1点称 3和 9 关于12是互补的 35 补码的意义 0256 1255 128 128 2 254 256 X X X 0 36 补码的定义 数的补码与 模 有关 模 计数系统的量程 X 补 M X modM 当X 0 M丢掉 X 补 X当X 0 X 补 M X M X 如假设为8位计数系统 8位二进制数的模为 28 256当X 0 X 补 28 X 一个数的补码等于其真值加模 对于正数 补码就等于其真值 对于负数 补码等于模减其真值的绝对值 37 补码的计算问题 当X 0 X 补 X 原当X 0 X 补 28 X 256 X 255 X 1因为对于负数 X 反 255 X 于是得到 正数的补码与其原码相同 负数的补码符号位为1 数值位为反码数值加1 38 原码 反码和补码 正数 原码 反码 补码相同符号位为0 数值为对应的二进制数 109 01101101 原 01101101 反 01101101 补负数 原码符号位为1 数值位为绝对值的二进制数 109 11101101 原反码符号位为1 数值位为绝对值的二进制数各位变反 109 10010010 反补码符号位为1 数值位为绝对值的二进制数各位变反加1 109 10010011 补 39 负数的补码的计算问题 方法1 已知原码 将表示数值绝对值的二进制数各位变反加1方法2 从原码的最低位起 到第一个1 含 以前 指低位方向 的原码中的各位数字不变 之后 指高位方向 的各位数字取反 符号位不变例已知原码11110000 两种方法均可得到其补码为10010000 40 由补码求原码的计算问题 对于已知的补码 按照求补计算过程的逆过程 可计算得到该补码的原码还可以证明 X 补 补 X 原例已知补码为10111101 两种方法都可以得到其原码为11000011 41 8位补码例 x 4 x 原 x 反 x 补 00000100 x 4 x 原 10000100 x 反 11111011 x 补 11111100 42 8位补码例 x 73 x 原 x 反 x 补 01001001x 73 x 原 11001001 x 反 10110110 x 补 10110111 43 计算机中的数值运算问题 在计算机中 带符号数的运算均以补码形式进行运算形式均为补码的加运算得到的结果当然也是补码需要输出时 将转换为原码 最后求出其真值 可以证明 A B 补 A 补 B 补 可以证明 A B 补 A 补 B 补 44 数值运算的例 计算 70 55 解 70 原 11000110 70 补 10111010 55 原 00110111 55 补 00110111 70 补 55 补 10111010 00110111 11110001因符号位为 1 需要对补码相加结果11110001的数值部分 求反加1 得计算结果的原码 10001111所以 70 55 15 45 数值运算的例 计算 70 55 解 70 原 11000110 70 补 10111010 55 原 10110111 55 补 11001001 70 补 55 补 10111010 11001001 1 10000011 因符号位为 1 需要对补码相加结果10000011的数值部分 求反加1 得原码 11111101所以 70 55 125 46 数的表示范围 无符号数一个n位的无符号二进制数X 其表示范围为0 X 2n 10 X 28 1 255 带符号数一个8位的带符号二进制数 其表示范围为原码 127 127 28 1 1 X 28 1 1反码 127 127 28 1 1 X 28 1 1补码 128 127 28 1 X 28 1 1 47 溢出的意义 计算机所能表示的数值的大小受表示数值的二进制数码的位数限制无论无符号数还是带符号数 只要数的绝对值超过机器数所能表示的最大值 就会产生 溢出 一旦出现 溢出 就表示运算结果出错 必须进行修正处理 48 带符号数运算的溢出问题 同号相减或异号相加 不会溢出同号相加或异号相减 可能溢出 对于8位机而言两个正数相加之和大于127 将溢出两个负数相加其绝对值之和大于128 将溢出 49 计算机判断溢出的方法 两个8位带符号二进制数相加或相减时 若C7 C6 1 则结果产生溢出C7为最高位的有进 借 位C 为次高位的有进 借 位如果是16位数据的运算 则判断C15和C14 50 举例说明 90 107 转换为90 107 01011010 1001010111101111C7 0C6 0则无溢出结果为 11101111 11101110 10010001 17 51 举例说明 107 90 转换为107 90 01101011 10100110100010001C7 1C6 1符号位有进位 是正确的 将被自然丢失 无溢出错误结果为 00010001 17 52 举例说明 90 10701011010 0110101111000101C7 0但C6 1则有溢出 110 92 10010010 10100100100110110C7 1但C6 0则有溢出 53 溢出问题的解决 扩充数的表示位数 即扩大数的表示范围但必须注意扩充的原则 数位的扩展不能改变数值的大小 只能改变数的表示位数无符号数扩展 高位全部加0带符号的正数扩展 高数值位全部加0带符号的负数扩展 高数值位全部加1 70 10111010 补 1111111110111010 补 54 数的表示位数的扩充例 x 73 x 原 x 反 x 补 01001001扩充为16位后为 0000000001001001x 73 x 原 11001001 扩充为16位后为 1000000001001001 x 反 10110110 扩充为16位后为 1111111110110110 x 补 10110111 扩充为16位后为 1111111110110111 55 总结计算机中数的运算问题 将参加运算的操作数用补码表示 进行加法得到两数和的补码 符号位作为数的一部分也参加运算 判断是否溢出 若没有溢出 则可进一步求和的真值 和为正数 可直接求出 和为负数 则再次求补 最后得到真值 56 实数问题的讨论 以上的讨论都以整数为对象实数的问题将更加

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论