為了了解位操作運算元,這是首先要了解如何表示整數的二進位制。考慮乙個正常的十進位制的數,如5623。我們直觀地理解這些數字的平均(5×1000)+(6×100)+(2×10)+(3×1)。因為有10位十進位制數,由乙個因子10的每個數字增加價值。
二進位制數的工作方式相同,除了因為只有2的二進位制數(0和1),由乙個因子2的每個數字增加價值。就像逗號常被用來做乙個大的十進位制數,易於閱讀的(如1427435),我們經常用4位二進位制數的組,使它們更容易閱讀。
轉換十進位制
在下面的例子中,我們假設我們正在處理的無符號數。
考慮到8位(1位元組)的二進位制數0101 1110。0101 1110(0×128)+(1×64)+(0×32)+(1×16)+(1×8)+(1×4)+(1×2)+(0×1)。如果我們總結所有這些部分,我們得到十進位制數64 + 16 + 8 + 4 + 2 = 94。
這裡是**式相同的過程。我們多每乙個二進位制數字的位值(取決於它的位置)。總結所有這些價值觀使我們的總。
1001 0111位二進位制,十進位制151。
這可以很容易地擴充套件到16或32位二進位制數,只需新增更多的列。
轉換十進位製到二進位制
從二進位製到十進位制的轉換是乙個小更棘手的,但仍然非常簡單。做這個最簡單的方法是向後,找出每一位必須。
考慮十進位制數148。
148 128?是的,所以128位必須為1。148–128 = 20,這意味著我們需要找到一位值得20。
20 64?沒有,所以64位必須為0。
20 32?沒有,所以32位必須為0。
20 16?是的,所以16位必須為1。20–16 = 4,這意味著我們需要找到一位值得4。
4 8?沒有,所以8位必須為0。
4 4?是的,所以4位必須為1。4–4 = 0,這意味著所有其餘的位必須為0。
148 =(1×128)+(0×64)+(0×32)+(1×16)+(0×8)+(1×4)+(0×2)+(0×1)=1001 0100
**式:
讓我們將117轉換為二進位制:
117 128?沒有,所以128位必須為0。
117 64?是的,所以64位必須為1。117–64 = 53。
53 32?是的,所以32位必須為1。53–32 = 21。
21 16?是的,所以16位必須為1。21–16 = 5。
5 8?沒有,所以8位必須為0。
5 4?是的,所以4位必須為1。5–4 = 1。
1 2?沒有,所以2位必須為0。
1 1?是的,所以1位必須為1。
117 = 0111 0101二進位制小數。
有符號數
下面的部分是可選的。大部分時間我們處理的二進位制數的位操作時,我們使用無符號數。然而,它是研究如何簽名的資料進行有趣的。
有符號數通常使用一種稱為2的補碼儲存。2的補碼(最重要的),最左邊的位作為符號位。乙個0位的手段是正數,和乙個1位的指數是負數。積極的簽名的數字儲存就像積極無符號數。負符號數字儲存為正數的逆,加1。
例如,在這裡我們將5元:
我們首先找出5的二進位制表示:0000 0101
然後我們將所有位:1111 1010
然後我們新增1:1111 1011
76二進位制轉換:
正76二進位制:0100 1100
將所有位:1011 0011
加1:1011 0100
我們為什麼要加1?認為數字0。如果乙個負的值只是表示為正數的逆,0將有兩個代表:0000 0000(零)和1111(負零)1111。通過新增1,1111和0000 0000 1111故意溢位成為。這可以防止0有兩種表現形式,簡化了一些需要處理負數的內在邏輯。
測驗1)轉換為十進位制的0100 1101。
2)將93轉換為8位二進位制數。
怎麼給文章增加附加價值
到2014年如果說 的文章還是複製黏貼過來沒有任何附加價值,那麼恭喜你距離 被降權甚至被k已經不遠了。從2012年下半年開始這些站點已經受到很大程度的影響,並且從最近的大規模降權來看也是這樣的。怎麼去增加附加價值?來看我的操作 使用者真正關心的不是如何解釋 如何區分,甚至不想知道這是怎麼引起的,更不...
敏捷團隊如何在測試中增加價值?
敏捷測試是遵循敏捷軟體開發原理的軟體測試過程。與傳統的測試模型不同,敏捷測試方法遵循開發方法,在該開發方法中,客戶和測試團隊會逐步提出需求。因此,敏捷的測試團隊都在關注需求的變化。敏捷開發團隊的主要目標是提供高質量的新功能。當團隊邁向敏捷時,他們通常必須找出以敏捷速度整合測試時間的最佳方法,這可能是...
怎麼給tee7增加附加價值
到2014年如果說 的文章還是複製黏貼過來沒有任何附加價值,那麼恭喜你距離 被降權甚至被k已經不遠了。從2012年下半年開始這些站點已經受到很大程度的影響,並且從最近的大規模降權來看也是這樣的。怎麼去增加附加價值?來看我的操作 使用者真正關心的不是如何解釋 如何區分,甚至不想知道這是怎麼引起的,更不...