首页 > 试题广场 >

-1022 的 32 位补码用十六进制表示为()

[单选题]
-1022 32 位补码用十六进制表示为()
  • 0000 03FEH
  • 0000 FC02H
  • FFFF 03FEH
  • FFFF FC02H
补码运算:
正数的补码:与原码相同
负数的补码:
1、符号位为1
2、其余位为该数的绝对值的原码,即:0000 0000 0000 0000 0000 0011 1111 1110
3、按位取反,即:1111 1111 1111 1111 1100 0000 0001
4、末位加1,即:1111 1111 1111 1111 1100 0000 0010
则本题答案是:D
发表于 2017-09-13 21:19:43 回复(1)


由十进制负数写出补码:1. 写出负数的原码  2. 写出该原码的反码(对非符号位取反)  3. 非符号位加1(符号位保持1不变)
由补码表示的二进制负数转十进制负数:1. 对非符号位取反   2. 非符号位加1    3. 非符号位代表的整数即为原补码表示的负数的绝对值。

如何由0xFFFF FC02得到十进制 -1022 ?
对非符号位取反:0x8000 03FD  ,即  000 0000 0000 0000 0011 1111 1101 ,非符号位数字代表1021,
1021 + 1 = 1022。
因此原负数的绝对值是1022。故原负数为 -1022

编辑于 2019-06-12 23:56:27 回复(0)
-1022
原码:1111 1111 1111 1111 1111 1100 0000 0010
反码:0000 0000 0000 0000 0000 0011 1111 1110
=>      FFFF FC02H
发表于 2023-11-22 16:31:21 回复(0)
-1022最后的补码是770:11 0000 0010
FC02H:00 1100 00 0010
发表于 2017-05-27 10:28:10 回复(0)