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

cc

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  38 隨筆 :: 14 文章 :: 21 評論 :: 0 Trackbacks
大家都知道數據在計算機中都是按字節來儲存了,1個字節等于8位(1Byte=8bit),而計算機只能識別0和1這兩個數,所以根據排列,1個字節能代表256種不同的信息,即28(0和1兩種可能,8位排列),比如定義一個字節大小的無符號整數(unsigned char),那么它能表示的是0~255(0~28-1)這些數,一共是256個數,因為,前面說了,一個字節只能表示256種不同的信息。別停下,還是一個字節的無符號整數,我們來進一步剖析它,0是這些數中最小的一個,我們先假設它在計算機內部就用8位二進制表示為00000000(從理論上來說也可以表示成其他不同的二進制碼,只要這256個數每個數對應的二進制碼都不相同就可以了),再假設1表示為00000001,2表示為00000010,3 表示為00000011,依次類推,那么最大的那個數255在8位二進制中就表示為最大的數11111111,然后,我們把這些二進制碼換算成十進制看看,會發現剛好和我們假設的數是相同的,而事實上,在計算機中,無符號的整數就是按這個原理來儲存的,所以告訴你一個無符號的整數的二進制碼,你就可以知道這個數是多少,而且知道在計算機中,這個數本身就是以這個二進制碼來儲存的。比如我給你一個2個字節大小的二進制碼,首先聲明它表示的是無符號的整數: 00000000 00000010,我們把前面的0省略,換算一下,它表示的也是數值2,和前面不同的是,它占了2個字節的內存。不同的類型占的內存空間不同,如在我的電腦中char是1個字節,int是4個字節,long是8個字節(你的可能不同,這取決于不同的計算機設置),它們的不同之處僅僅是內存大的能表示的不同的信息多些,也就是能表示的數范圍更大些(unsigned int能表示的范圍是0~28*4-1),至于怎么算,其實都是一樣的,直接把二進制與十進制相互轉換,二進制就是它在計算機中的樣子,十進制就是我們所表示的數。啊哈,原來這些都是可以計算的呀,我曾經還以為不同的計算機儲存的原理是不同的,取決于商家的喜好呢,呵呵。說了這么多怎么還沒有提到原碼、反碼和補碼呀,別急別急,心急吃不了熱豆腐,呵呵,因為無符號的整數根本就沒有原碼、反碼和補碼。(啊,那不是被欺騙了,5555````我告訴媽媽去,哥哥欺負我)都說了別急嘛,你就不想想我說了這么半天的無符號整數,那么有符號的整數怎么辦啊?

呵呵,對,只有有符號的整數才有原碼、反碼和補碼的!其他的類型一概沒有。雖然我們也可以用二進制中最小的數去對應最小的負數,最大的也相對應,但是那樣不科學,下面來說說科學的方法。還是說一個字節的整數,不過這次是有符號的啦,1個字節它不管怎么樣還是只能表示256個數,因為有符號所以我們就把它表示成范圍:-128-127。它在計算機中是怎么儲存的呢?可以這樣理解,用最高位表示符號位,如果是0表示正數,如果是1表示負數,剩下的7位用來儲存數的絕對值的話,能表示27個數的絕對值,再考慮正負兩種情況,27*2還是256個數。首先定義0在計算機中儲存為00000000,對于正數我們依然可以像無符號數那樣換算,從00000001到01111111依次表示1到127。那么這些數對應的二進制碼就是這些數的原碼。到這里很多人就會想,那負數是不是從10000001到11111111依次表示-1到-127,那你發現沒有,如果這樣的話那么一共就只有255個數了,因為10000000 的情況沒有考慮在內。實際上,10000000在計算機中表示最小的負整數,就是這里的-128,而且實際上并不是從10000001到11111111 依次表示-1到-127,而是剛好相反的,從10000001到11111111依次表示-127到-1。負整數在計算機中是以補碼形式儲存的,補碼是怎么樣表示的呢,這里還要引入另一個概念——反碼,所謂反碼就是把負數的原碼(負數的原碼和和它的絕對值所對應的原碼相同,簡單的說就是絕對值相同的數原碼相同)各個位按位取反,是1就換成0,是0就換成1,如-1的原碼是00000001,和1的原碼相同,那么-1的反碼就是11111110,而補碼就是在反碼的基礎上加1,即-1的補碼是11111110+1=11111111,因此我們可以算出-1在計算機中是按11111111儲存的。總結一下,計算機儲存有符號的整數時,是用該整數的補碼進行儲存的,0的原碼、補碼都是0,正數的原碼、補碼可以特殊理解為相同,負數的補碼是它的反碼加1。下面再多舉幾個例子,來幫助大家理解!

十進制 → 二進制 (怎么算?要是不知道看計算機基礎的書去)
47 → 101111

有符號的整數 原碼 反碼 補碼
47 00101111 11010000 00101111(正數補碼和原碼相同)
-47 00101111 11010000 11010001(負數補碼是在反碼上加1)

再舉個例子,學C語言的同學應該做過這道題:
把-1以無符號的類型輸出,得什么結果?(程序如下)

#include<iostream.h>
void main()
{
short int n=-1;
cout<<(unsigned short int)n<<endl;
}

首先在我的電腦中short int類型的儲存空間是2個字節,你的可能不同,我說過,這取決于你的計算機配置。它能儲存28*2=65536個不同的數據信息,如果是無符號那么它的范圍是0~65535(0~216-1),如果是有符號,那么它的范圍是-32768~32767(-215~215-1)。這道題目中,開始n是一個有符號的短整型變量,我們給它賦值為-1,根據我們前面所說的,它在計算機中是以補碼11111111 11111111儲存的,注意前面說了是2個字節。如果把它強制為無符號的短整型輸出的話,那么我們就把剛才的二進制把看成無符號的整型在計算機中儲存的形式,對待無符號的整型就沒有什么原碼、反碼和補碼的概念了,直接把11111111 11111111轉化成十進制就是65535,其實我們一看都是一就知道它是范圍中最大的一個數了。呵呵,就這么簡單。你個把上面的源代碼編譯運行看看,如果你的電腦short int也是兩個字節,那就會和我得一樣的結果。你可以先用這個語句看看:cout<<sizeof(short int)<<endl;看看你的電腦里的短整型占多少的儲存空間,也可以用sizeof來看其它任何類型所分配的儲存空間。

最后提醒一句,關于數據如何在計算機中儲存的,這里只適用于整型的數據,對于浮點型的是另一種方式,這里我們暫時就不深究了
posted on 2010-03-17 01:16 醒目西西 閱讀(284) 評論(0)  編輯 收藏 引用
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            蜜桃av综合| 久久精品国内一区二区三区| 最近中文字幕日韩精品| 欧美在线亚洲综合一区| 噜噜噜在线观看免费视频日韩| 国产精品嫩草99a| 午夜精品亚洲一区二区三区嫩草| 久久精品国产精品亚洲综合| 国产色产综合产在线视频| 欧美在线免费一级片| 久久精品国内一区二区三区| 在线观看日韩www视频免费| 免费国产一区二区| 亚洲每日更新| 麻豆精品传媒视频| 久久免费国产精品1| 欧美刺激性大交免费视频| 中文国产成人精品| 激情欧美国产欧美| 欧美日韩不卡| 久久国产日本精品| 一本色道久久综合亚洲精品小说| 久久精品国产第一区二区三区| 亚洲精品美女久久久久| 国产欧美婷婷中文| 欧美日韩不卡视频| 久久久国产精彩视频美女艺术照福利 | 亚洲国产一区二区三区在线播| 亚洲国产精品va在看黑人| 国产精品久久久久久福利一牛影视| 亚洲伊人网站| 亚洲国产影院| 男人的天堂亚洲在线| 久久久精品一品道一区| 亚洲一区二区三区久久| 亚洲天堂久久| 亚洲五月婷婷| 欧美日韩综合另类| 欧美 亚欧 日韩视频在线| 久久高清福利视频| 久久一二三四| 欧美精品在线观看91| 免费美女久久99| 久久亚洲高清| 欧美第一黄网免费网站| 欧美成人中文| 亚洲国产一区在线| 亚洲人成网在线播放| 亚洲精品综合精品自拍| 亚洲黄一区二区| 日韩午夜黄色| 亚洲欧美日韩在线播放| 久久久久**毛片大全| 久久综合999| 欧美日韩午夜激情| 国产亚洲免费的视频看| 亚洲国产精品va在线看黑人| 亚洲精品裸体| 香蕉av777xxx色综合一区| 美女91精品| 亚洲一区二区三区视频| 久久久久久久久一区二区| 欧美精品三级| 中日韩视频在线观看| 亚洲一区二区免费看| 欧美在线观看视频一区二区| 亚洲图片自拍偷拍| 亚洲人体1000| 欧美一区二区高清| 亚洲高清免费在线| 亚洲一二三区精品| 免费人成精品欧美精品| 欧美破处大片在线视频| 国产日韩欧美亚洲| 亚洲一区二区三区免费视频| 一区二区欧美激情| 欧美福利一区二区三区| 欧美在线观看视频一区二区三区| 亚洲自拍都市欧美小说| 午夜精品亚洲一区二区三区嫩草| 欧美在线播放视频| 日韩视频一区二区三区在线播放| 久久成人精品| 狠狠狠色丁香婷婷综合激情| 亚洲在线一区二区| 亚洲精品国产欧美| 快播亚洲色图| 亚洲国产精品一区二区三区| 欧美不卡在线视频| 久久精品免费观看| 久久久亚洲影院你懂的| 在线午夜精品| 欧美精品三级| 夜夜嗨av一区二区三区四区| 欧美激情亚洲综合一区| 欧美成年人视频网站| 亚洲激情专区| 亚洲精品久久| 国产精品视频免费观看www| 午夜在线电影亚洲一区| 亚洲日韩视频| 夜夜嗨av一区二区三区四区| 新狼窝色av性久久久久久| 一本一本久久| 国产三区精品| 亚洲电影有码| 国产精品乱人伦一区二区| 久久久久久夜精品精品免费| 久久免费黄色| 在线视频欧美日韩精品| 午夜精品久久久久久久99热浪潮| 黄色成人在线观看| 亚洲国产另类 国产精品国产免费| 欧美激情一二三区| 欧美偷拍另类| 美女国内精品自产拍在线播放| 亚洲人成7777| 久久成人国产| 亚洲综合第一| 另类天堂视频在线观看| 午夜精品在线看| 欧美国产精品久久| 久久一区二区三区四区| 国产精品www色诱视频| 亚洲动漫精品| 亚洲国产人成综合网站| 欧美中文字幕不卡| 亚洲自拍偷拍色片视频| 国产精品99久久久久久白浆小说 | 久久嫩草精品久久久久| 亚洲一区二区精品视频| 欧美激情视频一区二区三区免费 | 欧美99在线视频观看| 国产精品ⅴa在线观看h| 亚洲国产精品久久久久秋霞影院 | 欧美日韩一本到| 亚洲国内精品在线| 亚洲高清网站| 欧美成人精品不卡视频在线观看| 欧美高清不卡| 日韩一级黄色片| 国产精品久久久久永久免费观看 | 久久亚洲二区| 欧美99在线视频观看| 亚洲欧洲一区二区三区| 欧美日韩另类视频| 午夜精品久久久久久久99黑人| 久久久国产精品一区二区三区| 亚洲第一精品福利| 欧美日韩在线视频观看| 亚洲综合欧美日韩| 欧美国产乱视频| 亚洲午夜日本在线观看| 伊人久久综合| 国产精品天天摸av网| 免播放器亚洲一区| 亚洲欧美区自拍先锋| 亚洲激情自拍| 久久―日本道色综合久久| 亚洲午夜激情| 亚洲精品1区2区| 国产日韩欧美在线视频观看| 欧美精品一区二区高清在线观看| 亚洲一区二区在线播放| 亚洲精品一区二区三区四区高清| 久久国产日韩| 欧美自拍偷拍| 午夜精品久久久久久久99水蜜桃 | 亚洲欧洲另类国产综合| 国产精自产拍久久久久久| 欧美日韩xxxxx| 欧美国产精品一区| 欧美精品日韩综合在线| 欧美成人影音| 欧美好吊妞视频| 欧美日韩在线播放一区| 欧美三级电影精品| 国产精品视频yy9299一区| 亚洲免费激情| 亚洲人成人一区二区在线观看| 欧美激情第五页| 91久久夜色精品国产网站| 91久久久久久久久| 一本色道久久88综合日韩精品| 日韩亚洲精品视频| 亚洲一二三区在线观看| 久久精品99久久香蕉国产色戒| 欧美制服丝袜第一页| 欧美不卡在线视频| 国产精品高潮视频| 国产一区二区丝袜高跟鞋图片| 黄色日韩精品| 中文成人激情娱乐网| 久久精品论坛| 亚洲韩国日本中文字幕| 日韩一区二区高清| 亚洲欧美国产精品专区久久| 亚洲欧美日韩国产另类专区| 欧美一区二区三区四区视频| 美女啪啪无遮挡免费久久网站|