dec2bin is adding inappropriate 0s to negative numbers when numBits is specified

5 views (last 30 days)
e.g. dec2bin(-23, 10) produces '0011101001', but it should produce '1111101001'.
  2 Comments
Andrew
Andrew on 17 May 2020
My version doesn't specify that non-negative numbers are a problem. For example, it correctly converts -23 when numBits isn't specified.

Sign in to comment.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 17 May 2020
Edited: Fangjun Jiang on 18 May 2020
Report to tech support. I think it looks like a bug.
From "doc dec2bin" in R2020a
Starting in R2020a, the dec2bin function converts negative numbers using their two's complement binary values.
version
ans =
'9.8.0.1376261 (R2020a) Update 2'
dec2bin(-23)
ans =
'11101001'
dec2bin(-23,8)
ans =
'11101001'
dec2bin(-23,9)
ans =
'011101001'

More Answers (1)

Walter Roberson
Walter Roberson on 17 May 2020
Yes, it is a bug; if you want to report it yourself (the more people who report, the higher the priority), you can refer to case 04106030

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!