《原码反码和补码培训资料.ppt》由会员分享,可在线阅读,更多相关《原码反码和补码培训资料.ppt(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、原码反码和补码原码反码和补码原码反码和补码机器数与真值 通常,数的正负号是用符号“+”、“-”来表示的。在微机中难以表示正负号,常将符号数字化,即用0表示正,用1表示负。通常把符号数字化了的数称为机器数,而把原来带有正负号的数称为真值。计算机中的数是用一位符号位和若干数值位来表示的。机器数常用三种方法表示,即原码、反码和补码。原码反码和补码原 码 符号位为符号位为符号位为符号位为0 0 0 0表示正数,为表示正数,为表示正数,为表示正数,为1 1 1 1表示负数;其余各表示负数;其余各表示负数;其余各表示负数;其余各位等同于真值的绝对值。即一个数的原码,是数位等同于真值的绝对值。即一个数的原码
2、,是数位等同于真值的绝对值。即一个数的原码,是数位等同于真值的绝对值。即一个数的原码,是数值部分保持不变,而仅用值部分保持不变,而仅用值部分保持不变,而仅用值部分保持不变,而仅用0 0 0 0或或或或1 1 1 1表示符号表示符号表示符号表示符号“+”“+”“+”“+”或或或或“”。定义:知真求原(已知真值求原码)例:X=+1011,则X原码=01011 Y=-1011,则Y原码=11011规律:用0代替“+”,用1代替“-”,其余二进制数值位不变。X1011011 X原码 Y1011011 Y原码练习0101101111011011原码反码和补码知原求真(已知原码求真值)例:X原码=0101
3、1,则X=+1011 Y原码=11011,则Y=-1011规律:用+代替“0”,用-代替“1”,其余二进制数值位不变。X原01011011 X真值 Y原11011011 Y真值练习+1011011-1011011小结:原码符号位后的代码为真值的绝对值。+0的原码为00000000,-0的原码为10000000(8位字长)正数的原码等于它本身,即X原=X原码的表示范围为+(2n-1-1)-(2n-1-1),若n=8,则为+127-127原码反码和补码反 码 符号位的用法及正数的表示与符号位的用法及正数的表示与符号位的用法及正数的表示与符号位的用法及正数的表示与“原码原码原码原码”相同;负数的表示
4、是在相同;负数的表示是在相同;负数的表示是在相同;负数的表示是在“原码原码原码原码”表示的基础表示的基础表示的基础表示的基础上,通过将符号位以外的各位取反来获得的。上,通过将符号位以外的各位取反来获得的。上,通过将符号位以外的各位取反来获得的。上,通过将符号位以外的各位取反来获得的。定义:知原求反规律:正数:反码与原码相同负数:符号位不变,数值位按位取反。X原01011011 X反 Y原11011011 Y反练习0101101110100100原码反码和补码知真求反,知反求真分别如何得到?知真求反:用0代替+,数值位不变。用1代替-,数值位按位取反。知反求真:用+代替0,数值位不变。用-代替1
5、,数值位按位取反。小结:正数的反码与原码相同。对于负数,符号位仍为1外,其余各位取反。+0的反码为00000000,-0的原码为11111111(8位字长)反码的表示范围为+(2n-1-1)-(2n-1-1),若n=8,则为+127-127原码反码和补码补 码 符号位的用法及正数的表示与符号位的用法及正数的表示与符号位的用法及正数的表示与符号位的用法及正数的表示与“原码原码原码原码”相同;负数的表示是在相同;负数的表示是在相同;负数的表示是在相同;负数的表示是在“反码反码反码反码”表示的表示的表示的表示的基础上,通过加基础上,通过加基础上,通过加基础上,通过加1 1 1 1来获得的。来获得的。
6、来获得的。来获得的。定义:知真求补的方法规律:正数:用0代替+,数值位不变。负数:用1代替-,数值位按位取反末位加1。原码反码和补码知补求真用+代替0,数值位不变。用-代替1,数值位按位取反末位加1。知原求补正数:补码与原码相同负数:符号位不变,数值位按位取反末位加1。小结:正数的补码与原码相同。+0的补码为00000000,-0的补码为00000000(8位字长)补码的表示范围为-2n-1-+(2n-1-1),若n=8,则为-128+127原码反码和补码课堂小结u正数的原码、反码和补码相同。u无论原码、反码或补码,负数的符号位用1表示,正数的 符号位用0表示。u对于负数的原码、反码、补码,只有原码除符号位外其余部分为数值部分,反码、补码均不是数值部分。u利用原码的符号位不变,其余各位分别求反,可求出反码,反码在最低位加1可求得其补码。u负数的补码再求补码,可得其原码;原码的数值部分前加上负号,即为负数补码的真值。原码反码和补码课后作业课后题第3、4、5题结束结束