当我尝试在第1位位置显示以零开头的二进制表示法时,matlab会丢弃零并仅显示其他7位。我如何显示第一个位置? 例如:当我尝试显示" 01101111"时,matlab将其显示为" 1101111",但我也需要第1位位置值。请有人帮忙。
答案 0 :(得分:5)
在Matlab中,显示数字的位表示,您需要将其转换为dec2bin()
的字符串。
所以,如果你有x = 111
,它的二进制表示是:
dec2bin(111)
ans =
1101111
仅保留重要位。要强制使用8位表示,请使用:
dec2bin(111,8)
ans =
01101111
注意,结果将是字符串。如果要以数字格式检索位,请使用bitget()
:
bitget(111,8:-1:1)
ans =
0 1 1 0 1 1 1 1
基本上,如果您的需求纯粹是视觉效果,请使用dec2bin2()
来操作位,使用接受并返回数字类型的bit-wise operations functions。