如何把二進位制變數轉化成陣列,如,如何把一個二進位制變數轉化成陣列,如101010101 1 0 1 0 10

2021-07-01 01:20:34 字數 1683 閱讀 7366

1樓:匿名使用者

re:"如何把一個二進位制變數轉化成陣列,如101010101——[1 0 1 0 10 1 01]"

這個可以用位操作 & 和 移位操作 >> 解決。

如:((101010101 & 0x0001)>>0) 取得第0位(順序按彙編的從右至左)

((101010101 & 0x0002)>>1) 取得第1位 ……以此類推

移位是為了將該位如果是0就存為整型變數0 1 即 整型1

int a = ((101010101 & 0x0002)>>1); // a == 0

a = ((101010101 & 0x0002)>>2); // a == 1

……就這樣

re:"求餘和除有啥區別『/』"%""

/ 是 向下取整 沒有 四捨五入(要向上取整的話 加個0.5就好了 同四捨五入)

如:7 / 3 == 2 結果為2(存為整型變數) 如果7/3.0 = 2.3333...(存於浮點變數)

% 即 求餘數

如上面的 7 % 3 == 1 (7 / 3 = 2 ... 1)

2樓:清風海鳥

我解釋第二個問題,」%「求餘代表的是餘數,如:10%3=1;因為10除以3等於3餘數為1。

「/」代表除,10除以3為什麼不是3.3333。。。。呢?

這是因為資料型別,如果你寫 double j=10/3,結果就是3.33333。。。,而int型別 10/3 就等於3了。

matlab怎麼把陣列1 0 1 1 0 1 1 0 0 1變成陣列10 11 01 10 01

3樓:兔子和小強

將一行二進位制陣列(假設是a)變成8位8位的,然後再變成十進位制數可以這麼做:

bin2dec(num2str(reshape(a, 8, )'))

解釋版:權

reshape(a, 8, )            將a重排成8*k的矩陣,此時每8位在一列

reshape(a, 8, )'           轉置,使得每8位在一行

num2str(reshape(a, 8, )')  轉換為字元矩陣

bin2dec(num2str(reshape(a, 8, )'))  呼叫bin2dec將二進位制轉換為十進位制

如果你們老師不讓直接用bin2dec函式的話,可以這麼寫:

2.^(7:-1:0) * reshape(a, 8, )

在labview中,我要將一個二進位制位元組的「陣列」比如(11010011)轉化為十進位制數,應該怎麼轉換那?

4樓:匿名使用者

你可bai以使用「布

爾陣列du至數值轉換」

1)首zhi先將上述的二進位制數dao組(11010011)通過for迴圈,判斷專每個元屬素是否等於1,如果等於,輸出布林值t,否則輸出布林值f,這樣得到一個 布林陣列;

2)使用「布林陣列至數值轉換」將剛才得到的布林陣列轉換成數值就可以了。

「布林陣列至數值轉換」具體位置: 程式設計——布林——布林陣列至數值轉換。

5樓:匿名使用者

2^7+2^6+0+2^4+0+02^1+2^0

6樓:

參***: 信任就是有一天你拿著槍指著我,最後槍響了,我也相信那是槍走火。

輸入十進位制整數num轉化成二進位制字串輸出

十進位制數num轉換為 復二進位制數的 製為 bai include iostream du include bitset intmain 擴充套件資料 庫函式 中使用的比zhi特集 c是語言的zd類庫dao的副本,用於輕鬆管理一系列位元集,而不需要程式設計師自己編寫 除了訪問指定索引的位之外,位集...

把十進位制數197d轉化成二進位制八進位制和十六進位制

十進位制轉二進位制 十進位制數迴圈除2,餘數按順序排列就是二進位制數的低到高位 例如 197 2 98餘1,98 2 49餘0,49 2 24餘1,24 2 12餘0,12 2 6餘0,依次類推得出二進位制數由低位到高位排列的數 10100011,然後反過來就是十進位制數197對應的二進位制 110...

無符號二進位制整數1011000轉化成十進位制是什麼?

導彈的彈道導彈的彈道導彈的彈道導彈。無符號二進位制1011000換成十進位制數是什麼 十進位制每位基數是1000 100 10 1,如果有2019十進位制數,說明其中包含2個1000,0個100,1個10和9個1,十進位制基數 個位1,高位 低位 10 二進位制基數 個位1,高位 低位 2,基數為 ...