位和进制的关系

时间: 2023-07-09 admin 互联网

位和进制的关系

位和进制的关系

一个int 类型占32位
也就是说需要用32位二进制数来表示这个数字

那么现在两个字节长度为16位的补码

下面的位的意思是二进制位
4位二进制位能表示一个16进制数
1位二进制位能表示一个2进制数

现有如下题目
(单选)17、两个字长16位的补码0A2B和E16A, 带符号扩展成32位后的结果分别C
A.00000A2B和0000E16A
B.FFFF0A2B和0000E16A
C.00000A2B和FFFFE16A
D.11110A2B和FFFFE16A

先看题目
字长(字节长度的缩写)为16位
那么说明需要16个二进制位来存放这个数字,但是题目中就给了4位数字,那么我们可以想到,这4位数字并不能是二进制或者十进制,而应该是16进制的数字,那么4*4刚好等于16
那么我们可以把题目翻译一下:两个补码分别为0x0A2B,0xE16A,将其转化为带符号扩展成32位后的结果分别为?
说白了其实就是给了你两个16位数字,让你求他们扩展成32位时的数字,但是给的不是原始数字,给的是补码,所以我们要先把补码转换成原码
过程见下图

正数的补码就是他的原码
负数的补码需要取反加一

over