专题运算计算机硬件技术基础学时_第1页
专题运算计算机硬件技术基础学时_第2页
专题运算计算机硬件技术基础学时_第3页
专题运算计算机硬件技术基础学时_第4页
专题运算计算机硬件技术基础学时_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

1、专题运算计算机硬件技术基础学时第1页,共87页,2022年,5月20日,2点6分,星期日本课使用教材课堂用教材:天大出版社 2006.9 MCS-51单片机原理及应用 ISBN7-5618-2321-5实验指导书:清华大学出版社2009.9 计算机硬件技术实践教程ISBN978-7-302-20991-1第2页,共87页,2022年,5月20日,2点6分,星期日学时分配 共48学时(实验另计)专题一用4学时概述内容、“三微”、表示数、编码、逻辑运算 引出算术运算电路的求补电路 先引出求补码和求补 算术运算解决 本课学什么? 掌握什么? 怎样学?下课后各班交课表(只需注明有课状况即可,可以划X或

2、者O来代替具体科目),以便安排实验时间还有,留下电话方便联系本课相关问题1.上课,2.作业,3. 软件、硬件实验(报告)考勤方法(方法I, 方法II)第3页,共87页,2022年,5月20日,2点6分,星期日本课的地位学习本课对基础知识的要求本课教学目标学习本课的方法授课章节及学时安排实验内容及安排第一讲的重点和难点 第4页,共87页,2022年,5月20日,2点6分,星期日本课的地位计算机文化基础计算机技术基础计算机应用基础第一层第二层第三层计算机软件技术基础计算机硬件技术基础计算机硬件技术基础微机原理、微机接口、微机应用第5页,共87页,2022年,5月20日,2点6分,星期日 微机运算基

3、础 微机组成、基本工作原理、微机系统初步 了解CPU体系结构 了解存储器系统结构、作用 了解I/O接口基本功能、结构、端口的编址方式 和I/O同步控制方式 掌握中断概念、CPU响应中断的条件和处理过程 掌握指令系统和汇编语言程序设计(隐含的) 微机原理(重点)第6页,共87页,2022年,5月20日,2点6分,星期日了解并行接口与串行接口的共性与区别 掌握串行通讯的基本概念掌握可编程并行接口芯片的工作方式、初始化编程掌握定时器、计数器的原理、功能、应用与编程了解键盘、显示器等人机交互设备的作用、原理及接口方法 理解并掌握A/D,D/A转换原理、主要性能参数,了解典型DAC、ADC集成芯片,与M

4、PU的接口方法、应用及编程了解异步串行通讯协议、应用与编程微机接口(重点)第7页,共87页,2022年,5月20日,2点6分,星期日了解微机在测控系统中的应用了解计算机测控系统的实时处理概念和一般结构了解测控系统的分析和设计方法单片机应用系统的一般分析和设计方法(重点) 微机应用第8页,共87页,2022年,5月20日,2点6分,星期日预先应学习:1、计算机文化基础2、计算机软件技术基础3、数字电路、模拟电路4、电工基础学习本课对基础知识的要求第9页,共87页,2022年,5月20日,2点6分,星期日本课教学目标基本知识基本技能思路方法独立分析问题和解决问题的能力实践能力和创新能力综合运用能力

5、独立获取知识的能力教师讲解学生“悟”教学目标传授知识与能力培养统一,理论与实践统一。第10页,共87页,2022年,5月20日,2点6分,星期日学习本课的方法1、利用迁移原理 将自身积累的知识充分发挥出来,迁移到本课新知识的学习。2、重视实践,独立思考,认真做实验3、带着问题学,寻找解决问题的知识、思路、方法第11页,共87页,2022年,5月20日,2点6分,星期日章节内容学时学习方式第一章 微型计算机基础4自学导学 第二章 MCS-51单片机的结构3导学第三章 MCS-51单片机的指令系统2+1*导学 (2第四章 汇编语言程序设计 2*迁移导学(4第五章 输入/输出和中断 3导学(2第六章

6、 MCS-51内部的I/O口、定时器及其应用 3导学(2第七章 MCS-51 单片机系统扩展 4*导学第八章 单片机人机接口(LED显示器接口) 4导学(2第九章 单片机系统的开发 9.1 设计步骤2自学(4第10章 新型的51兼容单片机简介1*导学授课章节及学时安排授课内容共31学时,外加一个学时介绍考试系统使用第12页,共87页,2022年,5月20日,2点6分,星期日实验内容学时实验一 熟悉软件环境及数传指令编程设计2实验二 算术、逻辑运算及位操作指令编程设计2实验三 分支和循环程序设计2实验四 查表、散转、子程序设计2实验五 8155及显示程序设计2实验六 P1口及外部中断、定时器及中

7、断2实验七 综合性、开放性、设计性实验2实验八 综合性、开放性、设计性实验2实验内容及安排第13页,共87页,2022年,5月20日,2点6分,星期日内容:书P1P28重点: 难点:“三微”的概念 减法运算的原理 机器数与真值 补码 补码、定点补码运算及 BCD 码、 ASCII 码 判溢出 算术运算与逻辑运算 BCD码运算及调整作业:消化本讲内容,P33思考习题1 1-11-5 消化1.4.3 计算机中的运算 P33 1-11、1-12、1-13、1-14 、1-15 1-16 、1-17、1-18 第一讲第14页,共87页,2022年,5月20日,2点6分,星期日第一章 微型计算机基础 .

8、1 微型计算机系统的概念 1、 微处理器、微型计算机、 微型计算机系统 2、本课主要讲授内容及要求专题一 计算机中的数、编码及运算 1. 微型计算机的运算基础 第一讲第15页,共87页,2022年,5月20日,2点6分,星期日1. “三微”的概念1、微处理器 (MPU) 算术逻辑单元 其核心cpu运算器和控制器 寄存器组 是微型计算机的核心部件 控制部件2、微型计算机 MPU 为核心 半导体存储器(ROM/RAM) I/O(Input/Output)接口和中断系统 系统总线(CB DB AB)集成在一个半导体芯片上组装在一块或数块印刷电路板上多板微型计算机单板微型计算机单片微型计算机第16页,

9、共87页,2022年,5月20日,2点6分,星期日微型计算机的两大分支核心器件微处理器微控制器MicroProcessor Unit embedMicroController UnitMPUMCU第17页,共87页,2022年,5月20日,2点6分,星期日微机组成结构的两大类型冯.诺依曼型哈佛型CPUI/O接口存储器系统总线数据存储器CPUI/O接口程序存储器系统总线DBCBAB例:PC机例:MCS-51单片机第18页,共87页,2022年,5月20日,2点6分,星期日3、微型计算机系统硬件系统软件系统第19页,共87页,2022年,5月20日,2点6分,星期日硬件系统微型计算机微处理器:运算

10、器、控制器内存储器ROM:ROM、PROM、EPROM、E2PROM、Flash ROM RAM:SRAM、DRAM、iRAM、NVRAMI/O接口:并行、串行、中断接口、DMA接口系统总线:数据、地址、控制总线(DB、AB、CB)外围设备输入/输出设备A/D 、D/A转换器开关量输入/输出终端微型计算机微处理器:运算器、控制器内存储器ROM:ROM、PROM、EPROM、E2PROM、Flash ROM RAM:SRAM、DRAM、iRAM、NVRAMI/O接口:并行、串行、中断接口、DMA接口系统总线:数据、地址、控制总线(DB、AB、CB)外围设备输入/输出设备A/D 、D/A转换器开关

11、量输入/输出终端第20页,共87页,2022年,5月20日,2点6分,星期日软件系统系统软件操作系统编译系统监控程序汇编程序程序设计语言机器语言汇编语言高级语言应用软件 把汇编语言源程序翻译成机器语言目标程序的语言处理程序 自汇编程序 交叉汇编程序第21页,共87页,2022年,5月20日,2点6分,星期日本课的主要内容及要求微型计算机 MPU 微处理器 存储器(内存)I/O接口系统总线连线编程综合应用器件的外特性掌握规律第22页,共87页,2022年,5月20日,2点6分,星期日具体机型:MCS-51单片微型计算机Single-Chip MicrocomputerMicro-Controll

12、er MCS-51 单片机的基本组成一、中央处理器CPU二、时钟电路三、内部存储器四、定时器/计数器(T/C)五、并行I/O口六、串行口七、中断控制系统第23页,共87页,2022年,5月20日,2点6分,星期日重点解决:计算机的重要职能之一处理数 在计算机中如何表示一个数? 不同性质数的运算规则和算法。14 微型计算机运算基础 1.4.1 计算机中数的表示方法 1.4.2 计算机中的编码 1.4.3 计算机中的运算14 微型计算机运算基础第24页,共87页,2022年,5月20日,2点6分,星期日 几个重要概念复习不同进制数之间的互换(黑板)3. 机器数与真值4带符号数的原码、反码、补码5数

13、的定点与浮点表示 1.4.1 计算机中数的表示方法第25页,共87页,2022年,5月20日,2点6分,星期日1 几个重要概念 重点概念1: 计算机中的数据都是以二进制形式进行存储和运算的 重点概念2: 在计算机中存储数据时,每类数据占据固定长度的二进制数位,而不管其实际长度。一般长度为字节的整倍数 重点概念3: 计算机中不仅要处理无符号数,还要处理带符号和带小数点的数。 例如:在八位微机中, 整数216 存储为11011000B 整数56 存储为00111000B 重点概念4: 机器数与真值 1 几个重要概念第26页,共87页,2022年,5月20日,2点6分,星期日2 不同进制数之间的互换

14、 1、不同进制数转换成十进制数按权展开法 表示不同进制数的尾部字母: 二 B , 十六 H ,八 Q ,十 D(可略) 例:10101010B=127+026+125+024+123+022+121+020=128+32+8+2=1702、十 二 (1)整数部分除以2取余法直到商为0止 (2)小数部分乘以2取整法直到积为0止 或达到精度要求止 例: 100= B= H = Q 例:0.625= B= H= Q 0.1= B = H= Q 2 不同进制数之间的互换第27页,共87页,2022年,5月20日,2点6分,星期日 3、二进制数、八进制与十六进制数之间的互换 1)二 八 三合一 2)八

15、二 一分三 3)二 十六 四合一 (重点) 4)十六 二 一分四 (重点) 例:0111 0110 B=76H 9BH=1001 1011B 7 6 1001 1011 例:0.1010 110 B= 0.ACH A C 不足四位补0 问:01110110B= ? Q 0.1010110B= ? Q第28页,共87页,2022年,5月20日,2点6分,星期日4、 用权表示数(2n 2n-1 2n-1 2n-1-1) 1) 权 n位二进制数各位的权从高位到低位依次为:n位二进制数:Bn-1Bn-2Bn-3 B1B0权: 2n-12n-22n-3 2120 2)用权表示数例:111111111B

16、= 2n-1,即n个1。 011111111B = 2n-1-1 ,即n-1个1 最高位的权为:2n-1例:n=8,11111111B=FFH=28-1 01111111B=7FH=28-1-1例: n位二进制数表示无符号数的范围: 02n-1 n=8 0 28-1 0 255 n=16 0 216-1 065535n=32?N=64?第29页,共87页,2022年,5月20日,2点6分,星期日3. 机器数与真值1)机器数:能被计算机识别的数称为机器数。2)真值: 机器数所代表的真实值称为机器数的真值。3) 对于无符号数其机器数与真值表示方法相同。 例:真值: 100=64H=01100100

17、B 对应的机器数:64H=01100100B n位二进制数可表示的数的范围是:0 2n-1 8位二进制数可表示的数的范围是: 0 28-1,0,FFH,0,255 16位二进制数可表示的数的范围是: 0 216-1,0,FFFFH,0,65535 例: 01100100B 其8位全部为数值位。 特点:无符号数的机器数与其真值为等值关系3. 机器数与真值第30页,共87页,2022年,5月20日,2点6分,星期日4) 带符号数的机器数的表示方法(重点和难点) 常见的有原码、反码和补码三种表示方式。 特点:带符号数的机器数与其真值表示方法不同, 两者的关系不是等值关系,仅是一一对应关系。例如:在八

18、位微机中,真值:65可表示成机器数(原码)为01000001B真值:65可表示成机器数(原码)为11000001B01100000符号位数值位符号位:“0” 表示正号“1” 表示负号第31页,共87页,2022年,5月20日,2点6分,星期日4 带符号数的原码、反码、补码(1)原码定义:在表示带符号数时,正数的符号位为“0”,负数的符号位为“1”,数值位表示数的绝对值,这样就得到了数的原码。例如在八位微机中:38原100110原00100110B38原100110原10100110B4 带符号数的原码、反码、补码第32页,共87页,2022年,5月20日,2点6分,星期日 计算公式:对于字长为

19、n位的机器数: 当真值X0时,X可表示为Xn-2Xn-3X0; 当真值X0时,X可表示为Xn-2Xn-3X0, 则X的原码可定义为: X原0Xn-2Xn-3X0X 0X2n111Xn-2Xn-3X02n1X2n1|X| (2n11)X0 可见n位原码可表示数的范围为: (2n11)(2n11) 则在八位微机中,码可表示数的范围为127至127求真值:带符号数的原码表示法简单易懂,而且与真值转换方便。 此公式第一项即是原码,等号后面是由真值求原码(负)第33页,共87页,2022年,5月20日,2点6分,星期日原码的缺点: l“0”的原码有两种形式,这在运算中非常不方便。 0原 00000000

20、B 0原 10000000B,即分为0和0l原码在进行两个异符号数相加或两个同符号数相减时,需做减法运算,由于微机中一般只有加法器而无减法器,所以,为了把减法运算转变为加法运算就引入了反码和补码。原码的用途:l原码做乘除法运算方便,两数的符号和数值分别处理 积的符号为两数符号位的异或运算结果 积的数值部分为两数绝对值相乘的结果第34页,共87页,2022年,5月20日,2点6分,星期日(2)反码定义:正数的反码表示与原码相同;负数的反码,可将负数原码的符号位保持不变、数值位按位取反得到,或者将负数看作正数求原码,再将所有位按位取反得到。因此,在n位机器数的计算机中,数X的反码定义为:X反0Xn

21、-2Xn-3X0X 0X2n111Xn-2Xn-3X0111B|X|2n1|X| (2n11)X0缺点:“0”的反码也有两种表示法,即0和0。 0反00000000B 0反11111111B n位反码表示数的范围与原码相同, 八位二进制反码表示的范围仍是127至127。第35页,共87页,2022年,5月20日,2点6分,星期日例如八位微机中:11原00001011B11反00001011B11原10001011B11反11110100B38原10100110B38反11011001B127原01111111B127反01111111B127原11111111B127反10000000B0原0

22、0000000B0反00000000B0原10000000B0反11111111B求真值:由反码求得原码,再由原码求得真值,即可得到反码的真值。例如:反码11011001B,符号位为1,将数值位按位取反,得到原码10100110B,其真值为0100110B即十进制数38。第36页,共87页,2022年,5月20日,2点6分,星期日(3)补码(难点)定义:正数的补码表示与原码相同 负数的补码等于它的反码末位加1 即X补X反1 例如:11原00001011B11反00001011B11补00001011B11原10001011B11反11110100B11补11110101B127原0111111

23、1B127反01111111B127补01111111B127原11111111B127反10000000B127补10000001B0原00000000B0反00000000B0补00000000B0原10000000B0反11111111B128补10000000B第37页,共87页,2022年,5月20日,2点6分,星期日补码的含义: 以时钟对时为例来说明,现由7点钟调到4点钟。 顺时针调: 79 4 (mod 12)逆时针调: 73 4 (mod 12) 由于时钟上超过12点时就会自动丢失一个数12, 这个自动丢失的数叫做“模”(module,简写为mod)第38页,共87页,2022

24、年,5月20日,2点6分,星期日由补码的定义得求补码公式:l则n位补码表示数的范围为:2n1(2n11)l八位二进制补码表示的数值范围是128至127。优点:0的补码为00000000B,只有这一种形式。X补0Xn-2Xn-3X0X0X2n111Xn-2Xn-3X012n|X|2nX 2n1X0(mod 2n) 第39页,共87页,2022年,5月20日,2点6分,星期日已知补码求真值: 已知正数的补码求真值与原码相同,只要将符号位的0变为(正号),即得到它的真值。 已知负数的补码求真值方法1:将负数补码的数值位按位取反再加1,将符号位的1变为(负号),即得到它的真值。方法2:用公式:X=-(

25、2n-X补) 已知 补码为 01111111B,其真值为+1111111B=+7FH 已知 补码为 11111111B,其真值为: 10000000B+1= 10000001B,其真值为01H或:X= ( 28 11111111B)= (00H-FFH)= 1第40页,共87页,2022年,5月20日,2点6分,星期日小结:已知带符号数的机器数求真值1. 已知正数的原码、反码、补码求真值, 只需将符号位的“0”改为正号“+”即可。2. 已知负数的原码,其真值只需将原码的符号位的“1”改为负号“-”即可。3. 已知负数的反码,先将它变为原码,再求真值。 或用公式计算: 真值x=-(2n-1-x反

26、) 4. 已知负数的补码,数值位取反加1,符号为改为-号,或 用公式:X=-(2n-X补)第41页,共87页,2022年,5月20日,2点6分,星期日例:已知带符号数的机器数为 56H,求其真值。 真值=+56H例:已知带符号数的机器数为 0D6H,求其真值。 若0D6H是原码,则真值为:-56H 11010110B -1010110B 若0D6H是反码,则真值为:-29H -(0FFH-0D6H) 若0D6H是补码,则真值为:-2AH -(00H-0D6H)第42页,共87页,2022年,5月20日,2点6分,星期日 当n=8时,几种码的表示范围原码反码补码127至127127至127128

27、至127 当n=16时,几种码的表示范围原码反码补码32767至3276732767至3276732768至32767第43页,共87页,2022年,5月20日,2点6分,星期日5 数的定点与浮点表示 计算机中如何表示实数中的小数点呢? 计算机中不用专门的器件表示小数点,而是用数的两种不同的表示法来表示小数点的位置。 根据小数点的位置是否固定,数的表示方法分为定点表示和浮点表示,相应的机器数称为定点数和浮点数。 任意一个二进制数N均可表示为: NS2J 其中: S称为数N的尾数,表示数N的全部有效数字,决定了N的精度。 J称为数N的阶码,底为2,指明了小数点的位置,决定了数N的大小范围。第44

28、页,共87页,2022年,5月20日,2点6分,星期日 sfs1 s2 sm小数点隐含位置,定点纯小数 sf s1 s2 sm小数点隐含位置,定点纯整数(1)定点表示法 计算机在处理定点数时,常把小数点固定在数值位的最后面或最前面,即分为定点纯小数与定点纯整数两类,如图1-6所示。例如: 00011000B,如果看作定点纯整数,其真值为24 看作定点纯小数,其真值为0.1875 第45页,共87页,2022年,5月20日,2点6分,星期日 (2)浮点表示法 在浮点表示法中,小数点的位置是浮动的,阶码J可取不同的数值,则在计算机中除了要表示尾码S,还要表示阶码J。因此,一个浮点数表示为阶码和尾数

29、两部分,尾数一般是定点纯小数,阶码是定点纯整数,其形式如图1-7所示。 小数点隐含位置阶符阶码尾符尾数阶码部分尾数部分jfj1j2jnsfs1s2sm第46页,共87页,2022年,5月20日,2点6分,星期日00001001100010101010100000000000B阶符阶码 尾符 尾数(24位)(469.375)10(111010101.011)2 (229 (221001B补1001B补00001001B例如,某计算机用32位表示浮点数,尾数部分占24,为补码定点纯小数;阶码为8位补码定点纯整数。用来表示一个数469.375,先进行变换: 因此,数469.375在该计算机中的浮点表

30、示为:第47页,共87页,2022年,5月20日,2点6分,星期日1.4.2 计算机中的编码ASCII码:由七位二进制编码组成, 共有128个字符编码。包括图形字符(字母、数字、其它可见字符共96个)和控制字符(回车、空格等共32个) 其中 数字09的ASCII码为30H39H,差30H 字母AF的ASCII码为41H46H, 差37H D7位加奇偶校验位: 无校验 D7位补0 奇校验 D7位使含1的个数为奇数个 偶校验 D7位使含1的个数为偶数个 例: 30H 00110000H D7补0为无校验和偶校验 10110000H D7补1为奇校验1.4.2 计算机中的编码第48页,共87页,20

31、22年,5月20日,2点6分,星期日BCD编码:具有十进制位权的二进制编码。最常见的是8421码。(见书5-6页) 注意: 0000B1001B是09的BCD码 1010B1111B是非BCD码 例: 15 的BCD码为0001 0101B=15H 15=0FH 100=64H 100的BCD码为0001 0000 0000B=100H 压缩的BCD码 56H 占一个存储单元 非压缩BCD码 05H 06H 占两个单元存储方式第49页,共87页,2022年,5月20日,2点6分,星期日逻辑运算 1、与 3、非 2、或 4、异或 算术运算1加/减运算电路及二进制无符号数四则运算2带符号数补码运算

32、及判OV3BCD码加/减法及十进制调整 4、算术运算小结1.4.3 计算机中的运算 计算机中的运算分为两类:逻辑运算:逻辑“与”、“或”、“非”、“异或”等算术运算:加、减、乘、除运算1.4.3 计算机中的运算第50页,共87页,2022年,5月20日,2点6分,星期日FAAiBiCiSiCi1图1-8 全加器符号图AiBiCiSiCi+10000111100110011010101010110100100010111全加器真值表 加/减运算电路1加/减运算电路及二进制无符号数的四则运算第51页,共87页,2022年,5月20日,2点6分,星期日减法的实现 减法时SUB=1,有取反加1功能加法

33、时SUB=0无取反加1功能求 补电 路第52页,共87页,2022年,5月20日,2点6分,星期日进/借位标志CY=SUB C8SUBC8CY000011101110C7C8OV000011(负)101(正)110SUB加/减标志位0/1CyFAA6B6C6S6C71FAA1B1C1S1C21FAA0B0C0S0FAA7B7S7C811图1-9八位微机加/减运算电路OV11溢出标志OV=C7 C8第53页,共87页,2022年,5月20日,2点6分,星期日(1)加法运算二进制加法法则为: 00010011111011111二进制无符号数的四则运算第54页,共87页,2022年,5月20日,2点

34、6分,星期日例:二进制无符号数加法 被加数10111011B + 加数 00010110B进位 00111110和11010001B 1、求 187+22结果:11010001B 即209 SUB=0,C8=0,CY=02、求200+200 被加数11001000B + 加数 11001000B进位 11001000和 110010000B结果:SUB=0,C8=1,CY=1 和=进位值+8位和值 =256+10010000B = 400 第55页,共87页,2022年,5月20日,2点6分,星期日11011101 0011010011000101000 0011010000011111 被加

35、数10111011B + 加数 00010110B进位 00111110和11010001B结果:11010001B 即209 SUB=0,C8=0,CY=0第56页,共87页,2022年,5月20日,2点6分,星期日00010011 100010011000010001011000100 被加数11001000B + 加数 11001000B进位 11001000和 110010000B 10001001结果:SUB=0,C8=1,CY=1 和=进位值+8位和值 =256+10010000B = 400 第57页,共87页,2022年,5月20日,2点6分,星期日(2) 减法运算法则:(借1

36、当2) 被减数10111011B 减数 00010110B借位 00000100差 10100101B手算:例:求 187-22例:二进制无符号数减法结果:无借位,差为10100101B 即165直接减第58页,共87页,2022年,5月20日,2点6分,星期日取反11011101 001101001101001010011010111 11001011机器算:难点 被减数10111011B 减数 00010110B借位标志CY=SUB C8=1 1=0求补电路减法 SUB=1 10101011加1第59页,共87页,2022年,5月20日,2点6分,星期日 被减数 10111011B=BBH

37、 11101001B 取反 1 加1 11101010B =EAH 进 位 11111010 差 10100101B =A5H求补减数 00010110B=16H对减数求补后,加被减数例:求187-22 结果:10100101B 即165 无借位,SUB=1, C8=1 , CY=0说明:直接相减无借位,求补相加有进位,反之亦然。第60页,共87页,2022年,5月20日,2点6分,星期日 计算 22187,即00010110B10111011B时,有: 被减数 00010110B 减数 10111011B 01000100B取反 1加1 01000101B 进 位 00000100差 010

38、11011B 此时,结果为01011011B,即91,不正确, CyC8SUB ,C80,SUB=1 ,CY=1因为有借位256,所以,差=-256+91= -165求补第61页,共87页,2022年,5月20日,2点6分,星期日(3) 乘法运算法则 00=0 01=10=0 11=1 被乘数 1001B 乘数 1011B 1001 1001 0000 1001 乘积 1100011B常用算法:1、左移加2、右移加3、连加P129例4-22第62页,共87页,2022年,5月20日,2点6分,星期日(4)定点整数除法运算 1 1 1 0 0 1 0 0 0 1 1 0 0 1 0 1 1 1

39、1 1 0 1 1 0 1 1 0 1 0常用算法:1、移位相减法 P130 例4-232、连减 P138例4-28第63页,共87页,2022年,5月20日,2点6分,星期日定点补码运算定律: 当X,Y,X+Y,X-Y均在2n1(2n11)范围内时,则: 补补补 补 X补 Y补=+()补 =补补 如果XY,X-Y的值不在2n1(2n11)范围内(n=8时 -128,127 ),则机器就产生了溢出错误,上式不成立,运算结果无意义。2带符号数定点补码运算及判OV第64页,共87页,2022年,5月20日,2点6分,星期日 溢出判别 (overflow) 若XY 2n11,为正溢出; 若XY127

40、 典型算法:两个带符号数比较大小 用S表示和的符号位,OV为溢出标志位则: X补 Y补 S OV 比较结果 0 0 XY 0 1 XY 1 0 XY 第72页,共87页,2022年,5月20日,2点6分,星期日(1)BCD码的加法运算 在两个数的BCD码进行加法运算时,当低四位和高四位都无进位并且不超过9时,可得到正确的运算结果。 例1-13 已知X63,Y24,求XY 解: XBCD码 01100011B YBCD码 00100100B 进位 01100000 10000111B10000111B87BCD码6324BCD码XYBCD码 3BCD码加法及十进制调整第73页,共87页,2022

41、年,5月20日,2点6分,星期日 例1-14 已知X68,Y49,求XY 解: XBCD码 01101000B YBCD码 01001001B 进位 01001000 CY=0,AC=1 和 10110001B 01100110B 调整 100010111B CY=1 X+Y=100+17=117,CY=1,进位值为100 例1-14中,低四位有进位,高四位的值超过9,是非法码,结果错误,需进行调整。大家看到,在运算中,当低四位向四高位进位时,是逢16进位为1,即按照十六进制的原则进行的运算,而BCD码是十进制数,应按照逢十进一的原则进行运算,所以应将和的低四位加6以补上多拿走的6,调整为01

42、11B。和的高四位1011B大于9,应向高位进位,同样加上6进行调整,变为10001B。 编写出程序片段:MOV A,#68H;(A)=68H=01101000BADD A,#49H ;(A)=B1HDA A ;(A)=B1H+66H=17H CY=1 代表100 结果:117必须写BCD码不能写真值第74页,共87页,2022年,5月20日,2点6分,星期日(2)BCD码的减法运算 两个数的BCD码进行减法运算时, 当低四位或高四位都不需借位时,可得到正确的运算结果。 例1-15 已知X58,Y25,求XY 解: XBCD码 01011000B YBCD码 00100101B 0011001

43、1B 00110011B33BCD码5825BCD码XYBCD码当低四位或高四位有借位时,按十进制运算规则,向高位借1当10,而计算机中按二进制运算规则进行,借1当作16,因此运算后必须减6进行调整。第75页,共87页,2022年,5月20日,2点6分,星期日 例1-16 已知X68,Y49,求XY 解: XBCD码01101000B YBCD码01001001B 差 00011111B AC=1,CY=0 0110B 00011001B 00011001B19BCD码6849BCD码XYBCD码第76页,共87页,2022年,5月20日,2点6分,星期日说明:如果指令系统中有BCD码的减法调

44、整指令,即可直接用该指令完成上述调整。 如果指令系统中没有BCD码的减法调整指令,则不能用减法指令直接对两个BCD码进行减法运算,而需对减数求补,进行加法运算,然后用加法运算的调整指令进行调整。 对八位微机,BCD码的模为100(十进制数),减去减数实现对减数的求补。为在八位加减运算电路中运算,将100表示成9AH,即10011010B,减去减数求补。 第77页,共87页,2022年,5月20日,2点6分,星期日例1-17 已知X68,Y49,求XY 解: XBCD码01101000B YBCD码01001001B 模10010011010B YBCD码01001001B 01010001B

45、10111001B 调整01100000B 100011001B 这样,在程序中将BCD码的减法运算转换为加法运算,然后利用加法运算的调整指令进行调整,即可得到正确的结果。求补编写出程序片段:CLR CMOV A,#9AH ; (A)=9AH MODSUBB A,#49H; (A)=51H BCDADD A,#68H ; (A)=B9H 非BCDDA A ; (A)=19H BCDCPL C ; CY=0 无借位,差=19HBCD 求补相加有进位,直接相减位无借位,反之,有借位。第78页,共87页,2022年,5月20日,2点6分,星期日算术运算小结(结合黑板,举例说明)1、求补码与求补 求补

46、码:已知真值求补码 求补:两个含义:减法变加法;减数变成模内互补的数。 对于无符号数来说,减去一个数,在模内运算则等于加上一个与之互补的数。两个互补的数的和等于模。 对于带符号数,由于符号位与数值位一起参与运算,当不溢出时,运算规律与无符号数相同。即把带符号数当作无符号数一样处理。求补的含义转换为:已知X补,求-X补,减变加 即减正变加负,减负变加正。 例如:10-1=? 按无符号做,10+255=9 按带符号数做,10+-1补=10+0FFH=9 (模256丢失)第79页,共87页,2022年,5月20日,2点6分,星期日 X-Y=X+2n-Y= 2n +(X-Y) 1、X=Y,X-Y=0,

47、则 X-Y=2n +(X-Y)=X-Y,进位为2n ,即模2n丢失 ,也即, X-Y=2n +(X-Y)= 2n 也即,直接相减没借位,求补相加有进位; 2、XY,X-Y0, 则 X-Y=2n +(X-Y) 2n 也即,直接相减有借位,求补相加无进位。 对二进制数来说 模为2n 第80页,共87页,2022年,5月20日,2点6分,星期日2、算术运算与标志位 对于运算器来说:只根据加/减命令对送给它的两个操作数进行相应的运算,并不区分是什么性质的数,并且根据运算结果,填写标志位。其运算结果代表什么完全由用户决定。 一般情况下:无符号数运算判CY 定点带符号补码运算判溢出OV BCD码运算判CY,机器调整判AC、CY第81页,共87页,2022年,5月20日,2点6分,星期日例:求62+98=? 1、作无符号数运算,结果0A0H=160,CY=0。 一般,CY=0,结果在0255之间, CY=1,代表256,结果在0256+255之间 2

温馨提示

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

评论

0/150

提交评论