微型计算机原理与汇编语言 第2章-1 无符号数的表示及运算.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:27 大小:1MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

微型计算机原理与汇编语言 第2章-1 无符号数的表示及运算.ppt

微型计算机原理与汇编语言第2章-1无符号数的表示及运算.ppt

预览

免费试读已结束,剩余 17 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第2章计算机中的数制和编码(本章授课学时:4H)学习要求2.1无符号数的表示及运算2.1无符号数的表示及运算2.1无符号数的表示及运算2.1无符号数的表示及运算2.1无符号数的表示及运算2.1无符号数的表示及运算2.1.3二进制数的运算1.二进制数的算术运算(1)加:0+0=00+1=11+0=11+1=0(进1)(2)减:0-0=01-1=01-0=10-1=1(借位)(3)乘:00=001=010=011=1(4)除:二进制除法是乘法的逆运算。2.二进制数的逻辑运算(1)“与“运算(AND).“与”运算又称逻辑乘,可用符号“”或“”表示。运算规则如下:00=001=010=011=1可以看出,只有当两个变量均为“1”时,“与”的结果才为“1”。(2)“或”运算(OR)“或”运算又称逻辑加,可用符号“”或“+”表示。运算规则如下:00=001=110=111=1可以看出,两个变量只要有一个为“1”,“或”的结果就为“1”。(3)“非”运算(NOT)变量的“非”运算结果用表示。逻辑“非”运算规则如下:(4)“异或”运算(XOR)“异或”运算可用符号“∨”表示。运算规则如下:可以看出,两变量只要不同,“异或”运算的结果就为“1”。例2.7A=11110101B,B=00110000B,求2.2带符号数的表示及运算2.2.2机器数的表示方法例如,当机器字长n=8时,[+0]原=00000000B[-0]原=27+0(按定义计算,下同)=10000000B[+8]原=00001000B[-8]原=27+8=10001000B[+127]原=01111111B[-127]原=27+127=11111111B当机器字长n=16时,[+0]原=0000000000000000B[-0]原=215+0=1000000000000000B[+8]原=0000000000001000B[-8]原=215+8=1000000000001000B[+32767]原=0111111111111111B[-32767]原=215+32767=1111111111111111B8位二进制原码表示数的范围为-127+127,16位二进制原码表示数的范围为-32767+32767;“0”的原码有两种表示:00000000表示+0,10000000表示-0。2.反码设数x的反码记作[x]反,如机器字长为n,则反码定义如下:负数的反码是在原码基础上,符号位不变(仍为1),数值位按位取反。例如,当机器字长n=8时:[-0]反=(28-1)-0=11111111B[-127]反=(28-1)-127=10000000B反码表示数的范围是:8位二进制反码表示数的范围为-127+127,16位二进制反码表示数的范围为-32767+32767;“0”的反码有两种表示:00000000表示+0,11111111表示-0。3.补码设数x的补码记作[x]补,如机器字长为n,则补码定义如下:负数的补码是在原码基础上,符号位不变(仍为1),数值位按位取反,末位加1;或在反码基础上末位加1。例如,当机器字长n=8时:[-8]原=10001000B[-127]原=11111111B[-8]反=11110111B[-127]反=10000000B[-8]补=28-8=11111000B[-127]补=28-127=10000001B8位二进制补码表示数的范围为-128+127,16位二进制补码表示数的范围为-32768+32767。“0”的补码表示是唯一的。8位二进制数的原码、反码和补码如表2.1所示。表2.18位二进制数的原码、反码和补码表2.2.3真值与机器数之间的转换一.原码转换为真值根据原码定义,将原码数值位各位按权展开求和,由符号位决定数的正负即可由原码求出真值。例2.8已知[x]原=00011111B,[y]原=10011101B,求x和yx=+(026+025+124+123+122+121+120)=31y=-(026+025+124+123+122+021+120)=-292.反码转换为真值要求反码的真值,只要先求出反码对应的原码,再按上述原码转换为真值的方法即可求出其真值。正数的原码是反码本身。负数的原码可在反码基础上,符号位仍为1不变,数值位按位取反。例2.9已知[x]反=00001111B,[y]反=11100101B,求x和y解[x]原=[x]反=00001111B,x=+(026+025+024+123+122+121+