You specified that your number is in the additional code. For further conversion, you need to get a direct number code. Therefore, let\'s perform the conversion from additional code to direct code.
to do this, first perform the conversion from the additional code to the reverse by subtracting 1 bit, then get the direct code by inverting all the bits except the signed one.
| | | | | | | | |
1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | дополнительный код |
| | | | | | - | 1 | -1 bit |
1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | обратный код |
1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | прямой код |
got It:10010111
let\'s translate to decimal like this:
the Sign bit is not included in the translation!
0∙26+0∙25+1∙24+0∙23+1∙22+1∙21+1∙20 = 0∙64+0∙32+1∙16+0∙8+1∙4+1∙2+1∙1 = 0+0+16+0+4+2+1 = 2310
Since the number is signed and has a signed bit, the result will have a negative sign
got It: 100101112 =-2310