Мой учитель делает некоторые странные вещи, когда просит «выполнить -5-3 в двоичном формате с 4 битами, используя 1 или 2».
Я покажу вам, как он это решает, и надеюсь на хорошее объяснение.Также, если вы можете найти руководство, которое объясняет это, было бы очень полезно
5 in binary => 101
3 in binary => 11
We want 4 bit representation so it will go like this
5 => 0101
3 => 0011
Now we can find the 1's.
1's of -5 => 1010
1's of -3 => 1100 +
----
0110 with carry 1.
Однако 0
в начале показывает, что есть переполнение.Чтобы решить эту проблему, мы добавим 1
больше бита в начале каждого числа.
1010 => 11010
1100 => 11100 +
-----
10110 with carry 1.
Мы добавим перенос к результату.
10110
1+
-----
10111
У меня есть проблемапосле того, как мы обнаружим переполнение.Иногда он добавляет к каждому числу один бит слева от значения 1
(как в предыдущем примере), а иногда - один бит слева от значения 0
.
Может кто-нибудь объяснить?