博客

补数表示与浮点数|IT护照考试对策

2026年4月27日

针对IT护照考试,整理计算机内部的数值表示方法(2的补数表示的负数、IEEE 754浮点数格式)。

标签IT护照技术类计算机基础

为什么要使用补数

计算机内部所有数值都只用0和1的位串表示,因此无法使用负号。需要一种特殊的机制来表示负数。广泛采用的就是补数表示。使用补数表示还有一个优点,即加法和减法可以用同一电路处理。

1的补数和2的补数

1的补数

1的补数是一种通过将所有位取反(0变1,1变0)来表示负数的方式。例如,4位中5(0101)的1的补数是1010。但这种方式存在一个缺点:0的表示有+0(0000)和-0(1111)两种形式。

2的补数(广泛使用)

2的补数定义为1的补数加1。这种方式将0的表示统一为一种,并且加法和减法可以用同一电路处理,因此被现代计算机标准采用。

用2的补数表示负数

我们来看一下用4位表示-5的步骤。首先,将+5表示为0101。然后,将所有位取反得到1010(1的补数)。最后,加1得到1011,这就是-5的2的补数表示。验证一下,计算5+(-5)得到0101+1011=10000,舍弃第5位后为0000=0,因此可以确认正确。

n位可表示的范围

无符号整数可以表示0到2ⁿ-1。有符号整数(2的补数)可以表示-2ⁿ⁻¹到2ⁿ⁻¹-1,如果是8位,则可以表示-128到+127。

浮点数表示

浮点数表示是一种使用符号、尾数和指数来表示数值的方式,形式为“符号×尾数×2的指数次方”。由于能高效处理很大或很小的数,广泛应用于科学计算等领域。IEEE 754标准被作为标准采用。

IEEE 754 单精度(32位)

部分位数内容
符号1+ 或 -
指数部分8使用偏移量表示
尾数部分23小数点后的值

双精度(64位)中,指数部分为11位,尾数部分为52位,提供更广的范围和更高的精度。浮点数的优点是可以处理广泛的数值范围,但缺点是可能产生误差。

浮点数的误差

舍入误差是在近似无法表示的数值时产生的。精度丢失是在两个非常接近的值相减时有效位数减少的现象。信息丢失是在大数和小数相加时,较小的数值被忽略的现象。

IT护照考试的出题要点

用2的补数表示负数的步骤是高频考点。还需要掌握n位可表示的范围计算、浮点数和定点数的区别,以及浮点数中产生的误差类型。

历年真题的典型模式

  • “用8位2的补数表示-1会是什么”型 → 11111111
  • “浮点数中产生的误差是哪一个”型

相关术语

学习技巧

反复口头练习2的补数的步骤“位取反→+1”,考试时就能快速计算。记住8位的范围(-128〜+127)会很方便。误差类型请将“舍入误差・精度丢失・信息丢失”这3个作为一组来记忆。

总结

只要扎实理解2的补数的计算步骤、n位可表示的范围、以及浮点数的误差这三点,就能在相关题目中稳定得分。想要系统学习技术类内容,请参考技术类汇总;想要进行实战练习,请使用模拟考试

関連記事

Pro

Pro 会員になる

この機能は Pro 会員限定です。月額 ¥980 で、合格まで一気に走り抜ける機能がすべて使えます。

Pro に加入する