tft每日頭條

 > 生活

 > 常用區位碼内碼自動轉換

常用區位碼内碼自動轉換

生活 更新时间:2024-06-28 08:21:48

一、轉化方式

1、原碼

把數值轉成二進制,從右往左,位數不足補0。

首位是符号:0:正數 1:負數。

原碼不能運算

2、反碼

正數,反碼 = 原碼

負數:反碼 = 原碼 符号位不動,其他位數取反

3、補碼

正數:補碼 = 原碼

負數:負數 補碼 = 反碼 1

4、移碼

正數、負數:移碼 = 反碼 首符号位 取反。

5、示例:

數值6、-6的一個字節(8位),原碼、補碼、反碼、移碼

數值 6 -6

原碼:0000 0110 (不變) 1000 0110

反碼:0000 0110 (不變) 1111 1001 (符号位不動,其他位數取反)

補碼:0000 0110 (不變) 1111 1010 (反碼 1,符号位也進位,看下圖)

移碼:1000 0110 (反碼首符号位取反) 0111 1010 (反碼首符号位取反)

常用區位碼内碼自動轉換(軟考筆記02關于原碼)1

原碼、反碼、補碼、移碼

二、取值範圍

原碼: -(2^(n-1) - 1) 到 2^(n-1)-1 ; 8位: -127 到 127

反碼:-(2^(n-1) - 1) 到 2^(n-1)-1 ; 8位:-127 到 127

補碼:-2^(n-1) 到 2^(n-1)-1 ; 8位: -128 到 127 (因為補碼的 0和-0是一樣的)

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved