2015-10-26 115 views
-1

在Matlab中,我有兩個矩陣a(1x20)和b(1x20)。我想合併或連接它們作爲一個矩陣c(1x20)。例如,如果在Matlab中連接兩個矩陣

a=[1 3 2 0] 
b=[0 1 2 2] 

然後

c=[4 13 10 2] 

要解釋

a(1,1) = 01%// as a Most significant bits 
b(1,1) = 00%// as a least significant bits 

所以結果是

c(1,1)= 0100 
+1

您是否嘗試過在你自己的什麼?例如使用'bitshift'? – Daniel

+0

所以矩陣a的值可以大於3,還是限制在兩位。看看4 * a + b。 –

+0

https://en.wikipedia.org/wiki/Concatenation_(mathematics)這是你用這個bithsifting做的同樣的數學計算嗎? – madmanali93

回答

0

正式的方式做到這一點是使用bitshift

wordSize = 8 %Size of your word, this is for your case 

c = bitshift(a, wordSize/2) + b 

,你也可以做一些漂亮的印刷,以檢查:

for i = 1:length(a) 
    fprintf("%d: Part A: %08s \tPart B: %08s \tPart C: %08s\n", i, a[i], b[i], c[i]) 

警告,代碼沒有測試

+0

親愛的本,感謝您的回答,但我把字大小= 4和代碼的作品。非常感謝 –