如何使用Matlab將中的許多2進位制數轉換為10進位制數

2021-03-21 13:44:13 字數 1990 閱讀 2479

1樓:匿名使用者

a=textread('c:\a.txt','%s')';%以字元形式開啟檔案

alpha=hex2dec(a)'; %16進位制轉化為10進位制數,存入alpha矩陣

dlmwrite('c:\b.txt',alpha,'delimiter', ' ') %將得出資料存入新的b.txt文件

你可以參考一下啊。很容易的哈。

2樓:

舉例說明。假設有一個txt檔案如下,檔名是bin.txt。

0001

0101

0010

1001

matlab處理思路:

首先開啟txt檔案,並把資料讀到字串變數中。使用的命令是fopen和fread。

然後,把二進位制每個資料分隔開(這就要根據txt檔案中不同的分隔方式處理,我給的例子是換行符,其他的也可能是空格,也可能是分號等),並且分別轉換為十進位制,用命令bin2dec。

編寫一個m檔案如下。注意要與bin.txt檔案放在同一個目錄下,執行即可。

fid = fopen('bin.txt', 'r');

c = fread(fid, '*char')';

n=4; %%這裡設定二進位制的位數

for i=1:floor(length(c)/(n+2))+1

decimaldata(i)=bin2dec(c((i-1)*(n+2)+1:(i-1)*(n+2)+n));

enddecimaldata

得到結果:

decimaldata =

1 5 2 9

在matlab中,怎麼將一個十進位制的數值轉化為二進位制,然後將二進位制的結果寫到txt文字中??? 5

3樓:匿名使用者

matlab學習教程,或許對你以後得學習有幫助!

我有這樣一個檔案,檔案是有符號的二進位制資料,想使用matlab轉換成十進位制資料

4樓:匿名使用者

^% 讀入文

bai件(假du定zhi檔案dao

名為zd502097043.txt)

版cstr = textread('zd502097043.txt','%s');

n = length(cstr);

d = zeros(n,1);

for i=1:n

s = bin2dec( cstr(1) ); % 符號權d(i) = bin2dec( cstr(2:end) ) * (-1)^s;

endd

5樓:匿名使用者

% 讀入檔案(bai假定檔名du為data.txt)cstr = textread('data.txt','%s');

m = length(cstr);

n = length(cstr);

d = zeros(n,1);

for i=1:n

s = bin2dec( cstr(1) ); % 符號if s==1

d(i)=bin2dec(cstr)-2^m;

else

d(i) = bin2dec( cstr ) ;

endend

此乃正zhi解,上面的dao答案錯的,回負數的二進位制是補碼答

用matlab程式設計,如何將一堆十進位制數轉化成二進位制數輸出

6樓:糖糖寳寳

轉換方法:

不需要了解進位制的轉換規則*/

#include

#include

void main()

/*如果要處理小數,要把小數和整數部分分開處理,也不會太難*/

7樓:匿名使用者

for x=0:255

dec2bin(x)end

如何將matlab中的sym資料型別轉換為double型

一般來說用dec2hex及hex2dec就可以。ss 010600001388849c ssdec hex2dec ss sshex dec2hex ssdec format hex disp sshex 不過前提是你的機器能處理這麼大的數。我用小一點的數比如說ss 01600001388849c ...

MATLAB中plot函式如何將座標系直線變粗

有linewidth這個引數可以設定,下面是matlab官方的例子x pi pi 10 pi y tan sin x sin tan x plot x,y,rs linewidth 2,markeredgecolor k marke cecolor g markersize 10 matlab怎樣把...

matlab中ilaplace函式的使用問題,請幫忙修改一下程式

zpk 是控制系統工具箱的函式,建立的是零極點形式的傳遞函式模型,對於這類物件,並沒有定義ilaplace函式。ilaplace是針對符號型別 sym 物件定義的函式。對於如題主所給的這種較為簡單的模型 單輸入單輸出,無延遲,且系統階次不高 可以通過簡單的轉換,由zpk物件得到sym物件,再進行拉氏...