青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 15,  comments - 0,  trackbacks - 0
 

 

數在計算機中是以二進制形式表示的。
數分為有符號數和無符號數。
原碼、反碼、補碼都是有符號定點數的表示方法。
一個有符號定點數的最高位為符號位,0是正,1是副。

以下都以8位整數為例,

原碼就是這個數本身的二進制形式。
例如
0000001 就是+1
1000001 就是-1

正數的反碼和補碼都是和原碼相同。

負數的反碼是將其原碼除符號位之外的各位求反
[-3]反=[10000011]反=11111100
負數的補碼是將其原碼除符號位之外的各位求反之后在末位再加1。
[-3]補=[10000011]補=11111101
一個數和它的補碼是可逆的。

為什么要設立補碼呢?

第一是為了能讓計算機執行減法:
[a-b]補=a補+(-b)補

第二個原因是為了統一正0和負0
正零:00000000
負零:10000000
這兩個數其實都是0,但他們的原碼卻有不同的表示。
但是他們的補碼是一樣的,都是00000000
特別注意,如果+1之后有進位的,要一直往前進位,包括符號位!(這和反碼是不同的!)
[10000000]補
=[10000000]反+1
=11111111+1
=(1)00000000
=00000000(最高位溢出了,符號位變成了0)

有人會問
10000000這個補碼表示的哪個數的補碼呢?
其實這是一個規定,這個數表示的是-128
所以n位補碼能表示的范圍是
-2^(n-1)到2^(n-1)-1
比n位原碼能表示的數多一個

又例:
1011
原碼:01011
反碼:01011 //正數時,反碼=原碼
補碼:01011 //正數時,補碼=原碼

-1011
原碼:11011
反碼:10100 //負數時,反碼為原碼取反
補碼:10101 //負數時,補碼為原碼取反+1

0.1101
原碼:0.1101
反碼:0.1101 //正數時,反碼=原碼
補碼:0.1101 //正數時,補碼=原碼

-0.1101
原碼:1.1101
反碼:1.0010 //負數時,反碼為原碼取反
補碼:1.0011 //負數時,補碼為原碼取反+1

在計算機內,定點數有3種表示法:原碼、反碼和補碼

所謂原碼就是前面所介紹的二進制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其余位表示數值的大小。

反碼表示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。

補碼表示法規定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

附錄:把十進制數轉換為機器碼的C++程序代碼

 #include <iostream>

using namespace std;

const int MAX = 32;

void Binary(char b[], int x); //x轉換為二進制數

void TrueForm(char b[], int x); //獲取原碼

void RadixMinus(char b[], int x); //獲取反碼

void Complement(char b[], int x); //獲取補碼

void TruthValue(char b[], int x);//獲取真值

 int main()

{

      int x = 1;

      char b[MAX+1]={0};

           cout << "十進制數:" << x << endl;

      TruthValue(b, x);//獲取真值

      cout << "真值:" << b << endl;

           TrueForm(b, x); //獲取原碼

      cout << "原碼:" << b << endl;

        RadixMinus(b, x);//獲取反碼 

      cout << "反碼:" << b << endl;

           Complement(b, x);//獲取補碼

    cout << "補碼:" << b << endl;

     cout << "十進制數:" << -x << endl;

      TruthValue(b, -x);//獲取真值

      cout << "真值:" << b << endl;

          TrueForm(b, -x); //獲取原碼

      cout << "原碼:" << b << endl;

           RadixMinus(b, -x);//獲取反碼 

      cout << "反碼:" << b << endl;

       Complement(b, -x);//獲取補碼

    cout << "補碼:" << b << endl; 

    system("pause");

    return 0;

void Binary(char b[], int x)//x轉換為二進制數

{

    for (int i=MAX-1; i>=0; i--)

    {

           b[i] = (x & 1) + '0';

           x >>= 1;

      }

      b[MAX] = '\0';

void TrueForm(char b[], int x) //獲取原碼:根據數學表達式求得

{

    if (x >= 0)

          Binary(b, x);

      else

          Binary(b, (1<<(MAX-1)) - x);

}  

void RadixMinus(char b[], int x) //獲取反碼:正數的反碼=補碼;負數的反碼=補碼-1

{

    if (x >= 0)

          Binary(b, x);

      else

          Binary(b, x - 1);

}

void Complement(char b[], int x) //獲取補:數據在計算機中以補碼形式存儲,直接轉換即可

{

    Binary(b, x);

}  

void TruthValue(char b[], int x)//獲取真值:根據原碼獲得真值

{

    TrueForm(b, x);

      b[0] = (b[0] == '0') ? '+' : '-';  

}

參考文獻:

1Boater的博客:《反碼和補碼技術是怎樣被提出的?》

http://blog.tianya.cn/blogger/post_show.asp?BlogID=227218&PostID=7046448

2goal00001111發帖:《閑扯原碼,補碼和反碼

http://m.shnenglu.com/goal00001111/

 

posted on 2010-09-23 19:04 王秋林 閱讀(437) 評論(0)  編輯 收藏 引用
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用鏈接

留言簿(1)

隨筆檔案(15)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99re热精品| 欧美日本免费| 狠狠色狠色综合曰曰| 亚洲砖区区免费| 羞羞漫画18久久大片| 国产日韩精品电影| 欧美一区二区三区日韩| 久久综合免费视频影院| 欧美手机在线| 久久精品久久99精品久久| 欧美护士18xxxxhd| 香蕉久久夜色精品| 久久久久亚洲综合| 一区二区三区视频观看| 国产欧美精品日韩精品| 国内一区二区三区| 亚洲激情在线视频| 欧美激情麻豆| 亚洲激情视频网| 免播放器亚洲一区| 99成人精品| 女人色偷偷aa久久天堂| 亚洲视屏在线播放| 樱桃国产成人精品视频| 欧美午夜理伦三级在线观看| 久久精品123| 亚洲欧美日韩国产中文在线| 亚洲精品一区二区网址| 欧美大片91| 久久精品成人一区二区三区| 在线亚洲一区二区| 久久久久99精品国产片| 欧美一区二区三区男人的天堂| 亚洲小说区图片区| 一本色道久久99精品综合| 亚洲级视频在线观看免费1级| 中文av一区特黄| 久久综合久久久久88| 亚洲免费成人av| 日韩一区二区精品在线观看| 久久精品国产第一区二区三区| 日韩小视频在线观看| 欧美一区二区三区播放老司机 | 久久精品在线视频| 日韩亚洲欧美成人| 欧美顶级大胆免费视频| 久久色中文字幕| 久久国产欧美精品| 欧美性大战xxxxx久久久| 亚洲精品日韩在线| 亚洲精品专区| 亚洲视频一起| 亚洲高清激情| 亚洲高清电影| 久久人人97超碰国产公开结果| 国产精品实拍| 国产主播一区二区三区四区| 国内精品久久久久国产盗摄免费观看完整版 | 亚洲欧美日韩精品一区二区| 亚洲免费在线视频一区 二区| 欧美激情一区二区三区不卡| 久久久亚洲一区| 欧美日韩一级片在线观看| 欧美色图五月天| 99在线精品视频| 欧美.www| 欧美日韩一区二区在线| 亚洲精品国产品国语在线app| 国产精品欧美激情| 亚洲影院免费观看| 你懂的视频欧美| 亚洲精品一二三区| 免费美女久久99| 久久亚洲综合网| 在线观看日韩av先锋影音电影院| 欧美一级二级三级蜜桃| 在线亚洲欧美视频| 免费视频亚洲| 亚洲免费激情| 亚洲精品资源美女情侣酒店| 欧美伦理在线观看| 亚洲尤物在线视频观看| 免费看av成人| 91久久午夜| 欧美视频在线不卡| 亚洲在线一区二区| 欧美专区在线观看一区| 欧美日韩免费精品| 亚洲在线日韩| 久久大逼视频| 日韩视频免费大全中文字幕| 中文av一区二区| 狠狠久久综合婷婷不卡| 亚洲福利国产| 国产精品无人区| 欧美黄色精品| 国产欧美精品| 亚洲国产一区二区a毛片| 久久久99爱| 亚洲最新在线视频| 欧美一区在线视频| 一本大道久久a久久精二百| 亚洲欧美国产高清| 亚洲第一区在线| 久久亚洲欧美| 欧美三日本三级少妇三2023| 久久午夜羞羞影院免费观看| 欧美日韩在线三级| 亚洲高清在线播放| 好吊一区二区三区| 亚洲永久精品国产| 中文一区在线| 噜噜噜91成人网| 久久久精品视频成人| 欧美视频不卡中文| 91久久国产综合久久| 极品少妇一区二区三区| 麻豆freexxxx性91精品| 国产精品久久久久久久久久三级| 亚洲成人在线免费| 国产日韩欧美| 亚洲一区日韩在线| 久久先锋影音av| 久久精品电影| 国产精品毛片va一区二区三区| 亚洲精品久久久久久久久久久久久 | 亚洲国产成人91精品 | 亚洲欧美日韩国产中文| 欧美久久久久中文字幕| 欧美激情亚洲另类| 伊人久久综合97精品| 性色一区二区三区| 在线精品亚洲| 久久久免费av| 男人的天堂亚洲| 黄色小说综合网站| 欧美在线播放一区二区| 久久精品一二三区| 激情一区二区三区| 久久久精品网| 亚洲国产精品传媒在线观看 | 欧美夜福利tv在线| 久久精品人人| 亚洲二区视频在线| 一区二区三区视频观看| 国语自产精品视频在线看| 午夜精品偷拍| 久久美女性网| 亚洲第一成人在线| 蜜臀99久久精品久久久久久软件| 欧美成人免费全部| 99精品国产热久久91蜜凸| 欧美日韩在线精品| 午夜精品久久久久久久久久久久| 久久久午夜精品| 亚洲七七久久综合桃花剧情介绍| 午夜精品免费| 久久九九99视频| 在线观看一区二区精品视频| 欧美成人激情在线| 亚洲小少妇裸体bbw| 夜夜爽av福利精品导航 | 国产精品第一页第二页第三页| 久久一区二区三区四区| 一区二区在线观看视频| 欧美不卡视频一区发布| 中文在线资源观看网站视频免费不卡| 欧美在线视频观看| 国产精品电影网站| 欧美一区=区| 在线观看视频一区二区| 一区二区电影免费观看| 日韩午夜激情电影| 国产精品成人一区二区艾草| 欧美一区二区日韩一区二区| 欧美激情 亚洲a∨综合| 亚洲一区二区免费在线| 国内精品写真在线观看| 欧美美女福利视频| 久久精品久久综合| 日韩一级视频免费观看在线| 久久久久久久久一区二区| 日韩视频一区| 狠狠色2019综合网| 国产精品美女午夜av| 欧美成人精品一区二区| 欧美一区二区大片| 一本色道久久综合| 欧美高清视频一二三区| 久久爱另类一区二区小说| 一本色道久久综合亚洲精品高清| 精品福利免费观看| 国产丝袜一区二区| 国产精品你懂的| 欧美视频1区| 欧美美女bbbb| 欧美高清自拍一区| 久久尤物视频| 欧美成年人视频| 久久精品国产欧美亚洲人人爽|