Представление отрицательных чисел.
Отрицательные числа кодируются в компьютере дополнительным кодом. Для получения дополнительного кода необходимо двоичный код положительного числа преобразовать в обратный код, а затем к обратному коду прибавить единицу. Для получения обратного кода нужно в двоичном коде положительного числа нули заменить единицами, а единицы нулями.

Преобразование отрицательного числа в положительное
Преобразование отрицательного числа, представленного в дополнительном коде, в положительное двоичное число выполняется по аналогичному алгоритму. Сначала дополнительный код преобразуется в обратный код, а затем к обратному коду прибавляется единица.

Сложение положительных и отрицательных двоичных чисел
Пример1: 65-65

При сложении получается число размерностью 9 бит. Числовыми считаются только младшие 8 бит. Они образуют двоичное число 0. Самый левый бит со значением 1 теряется.
Пример 2: 65-42
Эта арифметическая операция выполняется в два этапа. На первом этапе положительное двоичное число 42 преобразуют в дополнительный код, получая тем самым отрицательное двоичное число -42.

На втором этапе выполняется сложение положительного двоичного числа +65 и отрицательного двоичного числа -42, представленного в двоичном коде.

Шестнадцатеричное представление информации.
При создании сложных компьютерных программ, с встроенными функциями по управлению различными устройствами компьютера, программист должен уметь работать с двоичными кодами. Для удобства программистов в компьютерах двоичные коды представляются шестнадцатеричными кодами, т.к. в шестнадцатеричных кодах удобнее читать информацию с различных устройств компьютера, и удобнее составлять программы, управляющие устройствами компьютера.
В шестнадцатеричной системе счисления числа представляются 16-ю цифрами: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
|
Десятичная |
Двоичная |
Шестнадцатеричная |
|
0 |
0 |
0 |
|
1 |
1 |
1 |
|
2 |
10 |
2 |
|
3 |
11 |
3 |
|
4 |
100 |
4 |
|
5 |
101 |
5 |
|
6 |
110 |
6 |
|
7 |
111 |
7 |
|
8 |
1000 |
8 |
|
9 |
1001 |
9 |
|
10 |
1010 |
A |
|
11 |
1011 |
B |
|
12 |
1100 |
C |
|
13 |
1101 |
D |
|
14 |
1110 |
E |
|
15 |
1111 |
F |
|
16 |
1 0000 |
10 |
|
17 |
1 0001 |
11 |
|
18 |
1 0010 |
12 |
|
19 |
1 0011 |
13 |
|
20 |
1 0100 |
14 |
|
21 |
1 0101 |
15 |
|
22 |
1 0110 |
16 |
|
23 |
1 0111 |
17 |
Для того, чтобы компьютер понимал в какой системе счисления представлено число, после записи самого числа программист должен указывать признак системы счисления: D – десятичное число, B – двоичное число, H – шестнадцатеричное число. Например, десятичное число 32 может быть представлено в компьютере в следующих формах:
32D = 1 0111B = 17H
Если после числа не указан признак признак системы счисления, то компьютер будет считать такое число десятичным.
Для получения шестнадцатеричного числа двоичный байт разбивается на две одинаковые части по 4 бита. Затем каждые полбайта представляются одной шестнадцатеричной цифрой.
Пример кодировки байтов в различных системах счисления:

Для преобразования шестнадцатеричного числа в двоичный код необходимо каждую шестнадцатеричную цифру заменить соответствующим четырех-битовым двоичным числом:
