Asked by Willam Willam
on 29 Dec 2012

Hi. I want ask how I need to convert the data that I read from text file and put it in the single the form of 8 bits per each array. Thanks for help. Appreciate.

Answer by Image Analyst
on 29 Dec 2012

Is this what you mean:

array8bit = uint8(doubleArray);

Answer by Walter Roberson
on 30 Dec 2012

Putting your data into different arrays is not advised. Please read http://matlab.wikia.com/wiki/FAQ#How_can_I_create_variables_A1.2C_A2.2C....2CA10_in_a_loop.3F

To convert your values, use

bin2dec(A,8)

This will return a character array, one row for each input value, with each character being '0' or '1'. These will *not* be the numbers 0 and 1. If you want the numbers 0 and 1 instead of the characters '0' and '1', then use

bin2dec(A,8) - '0'

The result would be a number of rows, each 8 columns wide, with one row per input number.

If you were hoping that (for example) the input value 5 would convert to the *decimal* number 00000101, then although the conversion to decimal-coded-binary could be done, keep in mind that decimal values automatically drop leading 0's on output, so such an entry would print out as 101 rather than 00000101.

Show 24 older comments

Walter Roberson
on 1 Jan 2013

Yes.

Willam Willam
on 1 Jan 2013

Ok. I will try it when I'm free. Because prepare for final exam. Thanks ya Sir Walter

Willam Willam
on 9 Jan 2013

Sir walter, i tested already. It works but only for 1st array only. How to make it all arrays are recorded through this code? Thanks

Related Content

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
## 4 Comments

## Image Analyst (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/57619#comment_119703

Is the data already read from the file, or do you need code for that too? Have you tried dlmread(), csvread(), importdata(), or textscan()?

## Willam Willam (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/57619#comment_119717

Sir, I used fread() function previously. Is that this function cant used?

## Walter Roberson (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/57619#comment_119721

fread() is for binary files, not for converting text.

## Willam Willam (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/57619#comment_119725

From Image Analyst comment, I had use importdata() function and manage get my data in the form of A=[50 20]. But how I need to convert it into A=[11111111 11111111] and separate it into two arrays like A1=[11111111] A2=[11111111].