十六进制数的原码补码反码怎么表示
无论是十进制还是十六进制的数,在求补码时,都先转化为二进制,再进行补码的转换。
例如:
15的十六进制为F,转化为二进制为00001111,再转为反码00001111,最后转化为补码00001111。
正整数的补码是其二进制表示,与原码相同。
扩展资料:
原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。
在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。
补码的特性:
1,一个负整数(或原码)与其补数(或补码)相加,和为模。
2,对一个整数的补码再求补码,等于该整数自身。
3,补码的正零与负零表示方法相同。
参考资料来源:百度百科-补码
无论是十进制还是十六进制的数,在求补码时,都先转化为二进制,再进行补码的转换。
举例:
x = +2Fh = 0010 1111b
[x]原 =[x]反 =[x]补 =0010 1111b =2Fh
y = -5Ah = -0101 1010b
[y]原 = 1010 1111b =AFh
[y]反 = 1101 0000b =D0h
[y]补 = 1101 0001b =D1h
补码正数
正整数的补码是其二进制表示,与原码相同。
例:+9的补码是00001001。(备注:这个+9的补码是用8位2进制来表示的,补码表示方式很多,还有16位二进制补码表示形式,以及32位二进制补码表示形式,64位进制补码表示形式等。每一种补码表示形式都只能表示有限的数字。)
以上内容参考:百度百科-补码
转换公式:
● [ +16进制数 ]原码 = [+16进制数 ]反码 = [+16进制数 ]补码 = +16进制数。
● [-16进制数 ]原码 = 2^(n-1) + | 16进制数 | 。
● [-16进制数 ]反码 = 2^n - ( | 16进制数 | + 1 )。
● [-16进制数 ]补码 = 2^n - | 16进制数 | 。
·
例如:16 进制数 = +2BH。
这是正数,所以:[ +2BH ]原 = [ +2BH ]反 = [ +2BH ]补 = 2BH。
·
又如:16 进制数 = -2BH。
这是负数! 得分别求解。
设 n = 8,则有:2^8 = 100H,2^7 = 80H。
于是有:
[-2BH ]原 = 80H + 2BH = ABH。
[-2BH ]反 = 100H - 2CH = C4H。
[-2BH ]补 = 100H - 2BH = C5H。
在计算机系统中,数值,一律采用补码表示和存储。
原码和反码,在计算机中,都是不存在的。
虚构的,不存在的东西,你还求它干嘛?
求出来,你也没有地方放啊!
多余了!
你只要掌握了“负数与其补码”互相换算,就行了。
2021-12-07
十六进制的补码计算方式如下:一种特别的计算方法是,将对应的数位用15减除,然后用减除后的数+1得到十六进制的补码。
例如:6A3D(原码) 转换成 95C2+1=95C3(补码);
DE10(原码)转换成 21EF+1=6A3D(补码)。