有符号数与无符号数之间的转换

有符号数转换为无符号数

  比较两个等式:

有符号数与无符号数之间的转换_第1张图片(1)

     有符号数与无符号数之间的转换_第2张图片(2)

我们计算(1)-(2) = xw-12w                  (3)

我们可以得到 :B2U = xw-12w + B2T

将x用T2B替代,则:B2U(T2B)= T2U = x + xw-12w

位xw-1决定了x是否为负

据此 我们可以得到公式:

相应的转换图为:

有符号数与无符号数之间的转换_第3张图片

 

有符号数与无符号数之间的转换_第4张图片

结果为

t = -1, t2u = 255

无符号数转换为有符号数

同样地,在(3)之后

我们可以得到B2T = B2U -  xw-12w

我们有B2T(U2B) = B2U(U2B) -  xw-12w

即 U2T = u - xw-12w

有符号数与无符号数之间的转换_第5张图片

有符号数与无符号数之间的转换_第6张图片

结果为

u = 255, u2t = -1

你可能感兴趣的:(计算机操作系统)