程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 原碼,反碼,補碼,個人理解,反碼補碼

原碼,反碼,補碼,個人理解,反碼補碼

編輯:C#入門知識

原碼,反碼,補碼,個人理解,反碼補碼


原碼:

  二進制定點表示法,即最高位為符號位,”0“表示正數,”1“表示負數,其余的位表示數值的大小

  正數的最高位為0

  負數的最高位為1

例子:

  符號位     數值位

+7  0   0000111    

-7   1   0000111

反碼:

  正數的反碼與原碼相同,沒有任何改變

  負數的反碼:與原碼的符號位不變,其他值取反,也就是0變1,1變0   

例子:

  符號位     數值位

+7  0   0000111    

-7   1   1111000

補碼:

  正數的補碼與原碼相同,沒有任何改變

  負數的補碼是在反碼的基礎上加1

例子:

  符號位     數值位

+7  0   0000111    

-7   1   1111001

 

總結一下:

  一個byte 的范圍為何是  -128~127

  一個字節為8個bit,也就是 00000000 (8位)

當計算機為了區分正數和負數,占去了一個符號位來表示正負,所以最大的數只能表示 1111111  (7位),

二進制的1111111轉換為10進制就是+127。

 

請教下。。。我理解的對嗎?

 

 

 

  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved