2字节数据转换为整数吗?
339(30天)
显示旧的评论
我有一个两个字节数据(unsigned)数组。
例如,x = (255 67)
我读的数据从一个传感器给一串字节数据(无符号0到255)。从我选择相应的两字节的数据设置必要的参数计算。
我想将这转化为一个整数值或双重价值真正的数学计算。
我试着用。
1 x = uint8 ([0]) y =定型(x, uint32) %,但这给了一个错误。
如果我使用:x = uint16 (67 [255]) y =定型(x,“uint32”)
%的答案是
4391167
我不如何检查答案是否正确。或转换的语法是正确的吗?
谁能给我正确的代码2字节数据转换整数. . !
0评论
接受的答案
更多的答案(2)
图像分析
2015年1月26日
编辑:图像分析
2015年1月26日
我不知道哪个元素x的上部或下部字节,所以我做了这两种方法。试试这个:
x = (255 67)
%显示二进制字节。
dec2bin (x (1))
dec2bin (x (2))
%如果x(1)是最重要的字节:
x_uint16 = uint16 (256 * x (1) + (2))
dec2bin (x_uint16)
%如果x(1)最低有效字节:
x_uint16 = uint16 (256 * (2) + x (1))
dec2bin (x_uint16)
注意,x必须双或uint16变量,不是一个char或uint8变量,否则你不能乘以256。
在命令窗口中,你会看到:
x =
255 67
ans =
11111111
ans =
1000011
x_uint16 =
65347年
ans =
1111111101000011
x_uint16 =
17407年
ans =
100001111111111
你可以通过双取代uint16如果你想要的数据类型而不是uint16两倍。
Tharindu Weerakoon
2015年1月27日
编辑:Tharindu Weerakoon
2015年1月27日
1评论
穆罕默德阿克毛马苏德•
2018年2月20日
你好,
我有图像dicom 16位。像下面的我的形象:
> > P = dicomread (“PET_I1001_PT135.dcm”);
> >谁P
的名字大小字节类属性
P256 x256131072年int16
我的问题是,16位图像可以存储像素值到32767只。现在我想把它改成32位或64位的像素值可以存储多,和相应的活动多少放射性核素我用来诊断病人。
你能帮助转换,使用matlab吗?还是无论如何解决它?