欧美变态杂交XXXX,99综合之综合久久伊人,关晓彤床震18以下禁免费网站,精品国产3p一区二区三区,性感美女毛片

龍宇電子
級別: *
精華主題: * 篇
發(fā)帖數量: * 個(gè)
工控威望: * 點(diǎn)
下載積分: * 分
在線(xiàn)時(shí)間: (小時(shí))
注冊時(shí)間: *
最后登錄: *
查看龍宇電子的 主題 / 回貼
樓主  發(fā)表于: 2009-09-03 09:42
三菱plc十進(jìn)制樹(shù)范圍-32768-32767之間。32767我知道是怎么來(lái)的。但-32768是負數,我就搞不懂?想請教大俠幫忙!用二進(jìn)制表示!謝謝!



              




qinshengyue
是我,別開(kāi)槍?zhuān)?/div>
級別: VIP會(huì )員
精華主題: 0
發(fā)帖數量: 808 個(gè)
工控威望: 1216 點(diǎn)
下載積分: 31304 分
在線(xiàn)時(shí)間: 1234(小時(shí))
注冊時(shí)間: 2009-04-09
最后登錄: 2025-02-26
查看qinshengyue的 主題 / 回貼
1樓  發(fā)表于: 2009-09-03 09:56
給你轉個(gè)貼吧,慢慢看!
附1:關(guān)于原碼反碼和補碼的問(wèn)題http://zhidao.baidu.com/question/25035076.html?si=4數值有正負之分,計算機就用一個(gè)數的最高位存放符號(0為正,1為負).這就是機器數的原碼了.假設機器能處理的位數為8.即字長(cháng)為1byte,原碼能表示數值的范圍為

(-127~-0 +0~127)共256個(gè).

有了數值的表示方法就可以對數進(jìn)行算術(shù)運算.但是很快就發(fā)現用帶符號位的原碼進(jìn)行乘除運算時(shí)結果正確,而在加減運算的時(shí)候就出現了問(wèn)題,如下: 假設字長(cháng)為8bits

( 1 ) 10- ( 1 )10 = ( 1 )10 + ( -1 )10 = ( 0 )10

(00000001)原 + (10000001)原 = (10000010)原 = ( -2 ) 顯然不正確.

因為在兩個(gè)整數的加法運算中是沒(méi)有問(wèn)題的,于是就發(fā)現問(wèn)題出現在帶符號位的負數身上,對除符號位外的其余各位逐位取反就產(chǎn)生了反碼.反碼的取值空間和原碼相同且一一對應. 下面是反碼的減法運算:

( 1 )10 - ( 1 ) 10= ( 1 ) 10+ ( -1 ) 10= ( 0 )10

(00000001) 反+ (11111110)反 = (11111111)反 = ( -0 ) 有問(wèn)題.

( 1 )10 - ( 2)10 = ( 1 )10 + ( -2 )10 = ( -1 )10

(00000001) 反+ (11111101)反 = (11111110)反 = ( -1 ) 正確

問(wèn)題出現在(+0)和(-0)上,在人們的計算概念中零是沒(méi)有正負之分的.(印度人首先將零作為標記并放入運算之中,包含有零號的印度數學(xué)和十進(jìn)制計數對人類(lèi)文明的貢獻極大).

于是就引入了補碼概念. 負數的補碼就是對反碼加一,而正數不變,正數的原碼反碼補碼是一樣的.在補碼中用(-128)代替了(-0),所以補碼的表示范圍為:

(-128~0~127)共256個(gè).

注意:(-128)沒(méi)有相對應的原碼和反碼, (-128) = (10000000) 補碼的加減運算如下:

( 1 ) 10- ( 1 ) 10= ( 1 )10 + ( -1 )10 = ( 0 )10

(00000001)補 + (11111111)補 = (00000000)補 = ( 0 ) 正確

( 1 ) 10- ( 2) 10= ( 1 )10 + ( -2 )10 = ( -1 )10

(00000001) 補+ (11111110) 補= (11111111)補 = ( -1 ) 正確

所以補碼的設計目的是:

⑴使符號位能與有效值部分一起參加運算,從而簡(jiǎn)化運算規則.

⑵使減法運算轉換為加法運算,進(jìn)一步簡(jiǎn)化計算機中運算器的線(xiàn)路設計

所有這些轉換都是在計算機的最底層進(jìn)行的,而在我們使用的匯編、C等其他高級語(yǔ)言中使用的都是原碼。




附2:算術(shù)運算的溢出問(wèn)題


   關(guān)于算術(shù)運算的溢出問(wèn)題,曾經(jīng)我也迷茫過(guò),而且不知道為什么整型變量溢出后會(huì )是模運算的結果呢,以前還以為是不可以預測的,不過(guò)弄懂了原碼、補碼的概念后,就發(fā)現其實(shí)都是有規律可循的,如果你還不太清楚補碼什么東西,建議先看看8月1日的隨筆『計算機中的原碼、反碼和補碼』,弄清楚整型數據在計算機中是如何儲存的。相信我的傻老婆看完了那篇文章后,很快也能弄懂這個(gè)問(wèn)題的。

  在那篇文中,我們講述了為什么我們把-1強制成無(wú)符號短整型輸出后會(huì )得到65535,在這里我們不對它進(jìn)行類(lèi)型轉換,我們只是超出它的范圍看看。

  還是定義一個(gè)2字節大小的短整型short int n;,學(xué)了前面的知識,我們知道這里n的范圍是-32768~32767,而且通過(guò)前面知識我們也知道:

  這里的-32768在計算機中特殊表示為10000000 00000000

  0~32767是00000000 00000000~01111111 11111111

  -1~-32767是11111111 11111111~10000000 00000001

  當我們賦值n=32767,我們先n+1,超出它的范圍,再輸出n看看,結果是-32768,為什么?我們來(lái)分析一下,32767在內存中是以01111111 11111111儲存的,我們對這個(gè)二進(jìn)制碼加1運算看看,結果是10000000 00000000,它表示的數是多少,哈哈,這不就是-32768嗎?不甘心,也許是巧合呢,那我們再加1看看,結果是10000000 00000001,表示的是-32767,再多試幾個(gè)也一樣的。哦,原來(lái)不是巧合呀,正因為如此,所以我們就不用這么繁瑣了,直接進(jìn)行模運算就可以了!

   下面我把書(shū)上的例子再拿出來(lái)給你講你就明白了。

   -------------------------------------------------------

   在16位機器上進(jìn)行下面的操作://為什么強調16位機器?因為16位機器上的int型的存儲空間是2個(gè)字節

   int weight=42896;

  如果你把輸出,在16位機器中將不能得到42896,而是-22640。因為有符號整數的表示范圍是-32768~32767(共65536個(gè)數),所以它只能得到42896的補碼-22640(42896-65536=-22640)。

  一個(gè)整型類(lèi)型的變量,用任何一個(gè)超過(guò)表示范圍的整數初始化,得到的值為用該整數范圍作模運算后的值。例如:

   int weight=142896;

  則當weight是2字節整型數時(shí),得到值為11824。因為142896-2*65536=11824。為什么不是用142896-3*65536=-53712呢,因為weight的范圍是-32768~32767,顯而易見(jiàn),-53712不在這個(gè)范圍內。

-------------------------------------------------------

  關(guān)于溢出,還有個(gè)強制轉換時(shí)遇到的溢出問(wèn)題,比如說(shuō)我們把一個(gè)4字節的整型轉換成2字節的短整型時(shí)就會(huì )遇到這個(gè)問(wèn)題,如果要推算出顯示結果,那就是知道數據在4字節整型中是怎么儲存的,在2字節的短整型中又是如何儲存的,而且還要弄清楚2字節在4字節中是怎么截取的,這些問(wèn)題我們暫時(shí)就不討論了。
以上皆為引用!
[ 此帖被qinshengyue在2009-09-03 10:13重新編輯 ]
本帖最近評分記錄:
  • 下載積分:+2(注冊中心) 熱心助人,加分表?yè)P
    龍宇電子
    級別: *
    精華主題: * 篇
    發(fā)帖數量: * 個(gè)
    工控威望: * 點(diǎn)
    下載積分: * 分
    在線(xiàn)時(shí)間: (小時(shí))
    注冊時(shí)間: *
    最后登錄: *
    查看龍宇電子的 主題 / 回貼
    2樓  發(fā)表于: 2009-09-03 10:46
    看懂一點(diǎn)點(diǎn)!謝謝大俠!

    欧美变态杂交XXXX,99综合之综合久久伊人,关晓彤床震18以下禁免费网站,精品国产3p一区二区三区,性感美女毛片