8位的二進位制數 1出現的總和為偶數是共多少個

時間 2023-02-25 12:50:07

1樓:網友

2的8次方=256

偶數個1的話,256/2=128

十進位制數28.625的二進位制數為多少哦``

2樓:網友

十進位制數的二進位制數為。整數部分轉換利用的是「除2取餘,逆序排列」法,小數部分轉換利用的是「乘2取整,順序排列」法。

首先進行整數部分換算,28/2=14 ,餘0 ,14/2=7 餘0,7/2=3 餘1,3/2= 1 餘1,1/2=0 ,餘1。然後將餘數進行逆向排序,得到11100。然後進行小數部分換算,0.

625x2= 取整數1,5 取整數0, 取整數1,進行正向排序為101。合併後得到轉換後的二進位制的值11100.

3樓:匿名使用者

整數部分除以2,然後取餘數,逆序排列。

28/2=14 餘0

14/2=7 餘0

7/2 =3 餘1

3/2=1 餘1

1/2=0 餘1

把餘數逆序排起來就是 11100 這個整數部分小數部分都乘以2,然後取整,正序排列。

。25 取整 1

。5 取整0

取整 1正序排列 101

和整數部分和一起

4樓:匿名使用者

整數部分是除2取餘逆序排列,小數是乘2取整順序排列。上面的應該是。

³¤¶èîª7µä¶þ½øöæêýöðóð¶àéù¸öå¼êý 30

如何快速計算乙個8位二進位制數是1的個數

5樓:金色潛鳥

用移位取位。

#include

int main()

例如:輸入511 得 8

輸入7 得 3

資訊學奧賽的一道解答題。

6樓:白日衣衫盡

八位二進位制,最大是11111111=2^7+2^6+2^5+2^4+2^3+2^1+2^0=255,從0到255,一共有256個二進位制序列號,00000000不包含1,所以包含「1」的八位序列號只有 255個。

第乙個 00000001和第二個00000010,連續兩個序列號只包含乙個1,(255-1)/2=127

答案是128?我覺得應該是127

用歸納法:兩位序列: 00 ,01,10,11,四個數,只有乙個含有偶數個1,是四個數的一半減一。

三位序列: 000,001, 010, 011, 100, 101, 110, 111,八個序列中,只有三個序列包含偶數個1,是平均數減一。

四位序列:0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111,十六個序列中,只有7個包含了偶數個1,還是平均數減一……

7樓:匿名使用者

這是個排列組合問題 8個二進位制各不干涉 且只有2中選擇即0或1 滿足題意的序列號即為有0個1的序號 2個1的序號 4個1的序號 6個1的序號 8個1的序號。

8樓:匿名使用者

由於一共有8位,每一位不是1就是0,且1的個數為偶數,所以1的個數可以是0、2、4、6、8

0個的時候是1,8個的時候也是1,2、4、6個的時候,是排列組合問題,如8個中取2個、取4個、取6個,即c82、c84、c86,所以最終答案就是 1 + c82 + c84 + c86 + 1 = 128

你這個是noip 2011普及組初賽題吧,我也是剛考完的。

微控制器程式設計 運用「與」運算,判斷某8位二進位制數是奇數還是偶數個1

9樓:生活如歌

51微控制器可以不用與運算,只接判斷,用p(奇偶校驗位),如果非得用與運算只能這樣:

mov a,#0ffh

anl a,#data;某數)

jnb p,rel

10樓:_小顧

mcs-51微控制器,奇偶校驗位p在程式狀態字psw(特殊功能暫存器)裡,就是p。

p奇偶校驗位。它用來表示alu運算結果中二進位制數字「1」個數的奇偶性。若為奇數,則p=1;否則為0。運算結果有奇數個1,p=1;運算結果有偶數個1,p=0.

11樓:匿名使用者

//假設r3中存放待判數值,r4存放臨時結果。如果暫存器不足,就用記憶體代替。

mov r0,1

mov r1,0 //1個數計數器。

mov r2,0 //迴圈次數,共迴圈8次。

label_loop:

cmp r2,8 //迴圈次數比較。

be loop_end //如果已經迴圈8次則跳轉到loop_end

and r4,r3,r0 //r3,r0按位與運算,結果存入r4

cmp r4,0 //依次取出相應的位與0比較。

be loop_next //若相等則跳轉到loop_next,否則計數器加1再跳轉。

inc r1

b loop_next

loop_next:

inc r2

shl r0 //r0左移一位,以便取出下一位。

b label_loop

loop_end:

and r1,r1,1 //r1中存放了"1"的個數。

cmp r1,1

...到這裡結束了,r1如果等於1那麼有奇數個「1」,否則偶數個「1」

由於共有8位數,最多0b1000個"1",只有r1最低位為1時才是奇數個「1」

要求彙編:用「與」運算判斷某8位二進位制數是奇數還是偶數個1。 (微控制器作業……)

12樓:楊必宇

二進位制數只是正數的話,那百麼只看末尾的數字就行了,如果是0,那麼就是偶數,如果是1,那麼就是奇數。

因為,除過末尾數字,其他數字都是當前位乘以2^n後的結果,那麼不管是偶數還是奇數,只要乘了2,都會是偶數,偶數加度偶數還是偶數。因此,只要判問斷末尾數字的奇偶就行了,當然,如果二進位制數是負數的話,那麼就得轉化成原碼再看。

13樓:勤奮的哈七八答

假設r3中存放待判數值,r4存放臨時結果。如果暫存器不足,就用記憶體代替。 mov r0,1,mov r1,0 //1個數計數器,mov r2,0 //迴圈次數,共迴圈8次。

label_loop,cmp r2,8 //迴圈次數比較,be loop_end //如果已經迴圈8次則跳轉到loop_end。

and r4,r3,r0 //r3,r0按位與運算,結果存入r4,cmp r4,0 //依次取出相應的位與0比較,be loop_next //若相等則跳轉到loop_next,否則計數器加1再跳轉inc r1,b loop_next//到這裡結束了,r1如果等於1那麼有奇數個「1」,否則偶數個「1」。

由於共有8位數,最多0b1000個"1",只有r1最低位為1時才是奇數個「1」,微控制器中似乎沒有三個運算元的指令。

14樓:千葉郎君

arm的彙編還可以,微控制器的沒學過。

以下是偽**,翻譯成微控制器彙編即可。

//假設r3中存放待判數值,r4存放臨時結果。如果暫存器不足,就用記憶體代替。

mov r0,1

mov r1,0 //1個數計數器。

mov r2,0 //迴圈次數,共迴圈8次。

label_loop:

cmp r2,8 //迴圈次數比較。

be loop_end //如果已經迴圈8次則跳轉到loop_end

and r4,r3,r0 //r3,r0按位與運算,結果存入r4

cmp r4,0 //依次取出相應的位與0比較。

be loop_next //若相等則跳轉到loop_next,否則計數器加1再跳轉。

inc r1

b loop_next

loop_next:

inc r2

shl r0 //r0左移一位,以便取出下一位。

b label_loop

loop_end:

and r1,r1,1 //r1中存放了"1"的個數。

cmp r1,1

...到這裡結束了,r1如果等於1那麼有奇數個「1」,否則偶數個「1」

由於共有8位數,最多0b1000個"1",只有r1最低位為1時才是奇數個「1」

大概微控制器中似乎沒有三個運算元的指令, 像and r4,r3,r0,自己再單獨實現以下吧。

用組合語言編寫乙個程式,統計乙個8位二進位制數中為1的位的個數

15樓:晏智不書

假設al中存放的是需要的8位數。

xorah,ah

movcx,8

loop1:

salal,1

;左移adc

ah,0;加cf

looploop1

最終結果ah中為1的個數。

二進位制的補碼多少位?8位二進位制補碼計算步驟是什麼

這個,可以自定義。最大的位數,取決於你的計算機,記憶體的大小。8位二進位制補碼計算步驟是什麼?正數 零的補碼,與其數值相同。負數的補碼,用 256 加上該數。補碼的計算步驟,與普通的二進位制計算步驟,完全相同。1 補碼是抄把減法用加法計算,採用進製丟的方法得到結果時應該補足的數。位二進位制補碼的計算...

二進位制位中的「二進位制位」是什麼意思呢

二進位制位 計算機儲存資訊的最小單位,稱之為位 bit,又稱位元 4個二進位制位即4個位 bit 組成的二進位制數,從0000到1111,它剛好匹配乙個16進製制數,即0 f。兩個4個二進位制位剛好構成乙個計算機中最小的儲存單位位元組 byte,簡稱b 知了看宇宙 二進位制,十進位制,十六進製制的區...

如何用8位的二進位制數表示,如何用8位的二進位制數表示 2

2 的補碼為1111 1110 步驟如下 首先,2 的二進位制數表示為0000 0010則 2 的原碼錶示為1000 0010,即最高位 符號位 變成1但是我們一般用補碼錶示負數,所以,對 2絕對值原碼取反加1,得到1111 1101 1 1111 1110 用正數的補碼錶示負數的二進位制 2 的8...