补码运算说明单片机.ppt_第1页
补码运算说明单片机.ppt_第2页
补码运算说明单片机.ppt_第3页
补码运算说明单片机.ppt_第4页
补码运算说明单片机.ppt_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

补码的运算说明 在微处理机中,使用补码进行运算使同一个微处理机 中既能运算带符号数又能运算不带符号的数。而且,在采用 补码表示带符号数的情况下,两个数的减法可以用加法来实 现。 在进行带符号数的加减运算时,把参与运算的数据转 换成补码形式进行运算。当使用8位二进制数表示带符号的 数时,它所能表示的数值范围在(-128)10(+127)10之间,如 果相加结果超出了这个范围,便溢出。 X+Y补=X补+Y补 X-Y补=X补+-Y补 加法运算 例: 98补 0 1 1 0 0 0 1 0 25补+)0 0 0 1 1 0 0 1 123补 0 0 1 1 1 1 0 1 1 未溢出 0 0 Cy S(未溢出) 补码的运算 例:已知 X=52 Y=38 求X-Y 方法1: 直接相减 X-Y = 52-38 =14 0 0 1 1 0 1 0 0 -) 0 0 1 0 0 1 1 0 0 0 0 0 1 1 1 0 方法2: 补码相加 X-Y = X-Y补补 = X补+-Y补补 = 52补+ -38补补 = 14 补 =14 52补: 0 0 1 1 0 1 0 0 -38补:+) 1 1 0 1 1 0 1 0 1 0 0 0 0 1 1 1 0 自然丢失 计算机在做算术运算时,必需检查溢出,以防止发生错误 【例1】两个带符号的数(01000001)补(十进制数+65)与 (01000011)补(十进制数+67) 例中是两个正数相加,但结果却是一个负数符号位 为1。显然,这个结果是错误的,出现这种错误的原因就在 于这两个数相加的结果超过了8位二进制带符号数所能表示 的数值范围。 【例2】两个负数(10001000)补和(11101110)补的相加情况。 由于规定用8位二进制数来表示带符号的数,按8位二进 制数补码来解释这两个带符号数的相加,其结果为一个正数 。很明显,结果是错误的。 【例3】两个无符号数(11111101)补和(00000011)补相加: 从相加计算的结果来看,如果微处理机只有8位,也就是 用8位二进制数来解释运算的结果,则将出现错误。因此, 在微处理机中设有专门的一位,称为进位位,它将用于保存 第九位以防丢失信息。 85补: 0 1 0 1 0 1 0 1 47补:+)0 0 1 0 1 1 1 1 132补: 1 0 0 0 0 1 0 0 溢出 0 1 Cy S (溢出) 错:两个正数相加和为负数。 - 85补: 1 0 1 0 1 0 1 1 - 47补:+)1 1 0 1 0 0 0 1 - 132补:1 0 1 1 1 1 1 0 0 溢出 1 0 Cy S 错:两个负数相加和为正数。 十进制数的编码 十进制的字符用二进制数进行编码BCD码: 0 0000 5 0101 1010 1111 1 0001 6 0110 1011 2 0010 7 0111 1100 3 0011 8 1000 1101 4 0100 9 1001 1110 二进制数对十进制编码。 每4位二进制数表示一个十进制字符,这4位中各位的权依次是 : 8、4、2、18421 BCD码。 BCD码的运算: 例、 1 8 +) 3 2 1 0 0 0 1 1 0 0 0 +)0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 结果低位= B是非BCD码(错) 需进行十进制调整: 0 0 0 1 1 0 0 0 +)0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 (个位大于9,应进1) +) 0 1 1 0 (加6使进1) 0 0 1 0 0 0 0 1 (结果形如21) BCD码加法规则: 两个BCD数相加时,“某位”的和小于10则保持不变; 两个BCD数相加时,“某位”的和大于9,则和数应加6修正。 BCD码减法规则: 两个BCD数相减时,“某位”的差未发生借位,则差数保持不变 ; 两个BCD数相减时,“某位”发生了借位,其差应减6修正。 这里“某位”指BCD数中的“个位”、“十位”、“百位”、 加法举例: 0 1 1 0 0 1 0 1 (6 5) +)1 0 0 1 0 1 1 1 (97) 1 1 1 1 1 1 0 0 +)0 1 1 0 0 1 1 0 (加66调整) 1 0 1 1 0 0 0 1 0 (162) 减法举例: 0 0 1

温馨提示

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

评论

0/150

提交评论