原码和补码的表示范围?

问题描述:

原码和补码的表示范围?

  如果是n=8位二进制:
  原码范围:-127~+127,写成16进制为FEH~7FH
  补码范围:-128~+127,写成16进制为FFH~7FH
  如果是n=16位二进制:
  原码范围:-32767~+32767,补码范围:-32768~+32767
  如果是n=32位二进制:
  原码范围:- 2 32-1–1 ~+ 232-1 –1 ,补码范围:- 2 32-1–1 ~+ 232-1 –1
 
  原码公式:- 2 n-1–1 ~+ 2n-1 –1
  补码公式:- 2n-1 ~+ 2n-1 –1
  (公式中的n-1是指数)