Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Системы счисления.doc
Скачиваний:
632
Добавлен:
02.05.2014
Размер:
143.87 Кб
Скачать

Двоичная система счисления.

В компьютерной технике очень часто используется двоичная система счисления. Такую систему очень легко реализовать в железе (кремнии, транзисторах, микросхемах).

Двоичная система счисления является позиционной системой. В ней используется две цифры: 0 и 1. В железе это может быть реализовано присутствием какого-либо физического явления или его отсутствием. Например: есть электрический заряд или его нет, есть напряжение или нет, есть ток или нет, есть сопротивление или нет, отражает свет или нет, намагничено или ненамагничено, есть дырка или нет и т.п.

Мы уже знаем, как переводить числа в различные системы счисления. Посмотрим, как это происходит с двоичной системой счисления. Переведем число в двоичной системе счисления в десятичную.

;

Вы это можете проверить на калькуляторе в Windows. Он умеет производить расчеты в двоичной, восьмеричной и шестнадцатиричной системах счисления. Теперь вы знаете, как он это проделывает. Если вы заходите посвятить свою жизнь программированию, то вам часто придется работать со степенями двойки. Хорошо бы было их вам поскорее выучить. Вот таблица:

Степень

Значение

0

1

1

2

2

4

3

8

4

16

5

32

6

64

7

128

8

256

9

512

10

1024

11

2048

12

4096

13

8192

14

16384

15

32768

16

65536

Произведем обратное преобразование. Чтобы преобразовать число в десятичном виде к двоичному, нам нужно будет делить все время на два и смотреть на остаток от деления. Возьмем число 33.

  • 33 : 2 = 16 остаток 1;

  • 16 : 2 = 8 остаток 0;

  • 8 : 2 = 4 остаток 0;

  • 4 : 2 = 2 остаток 0;

  • 2 : 2 = 1 остаток 0;

  • 1 : 2 = 0 остаток 1;

Получили 1000012.

Возьмем число 55. Посмотрим что получиться.

  • 55 : 2 = 27 остаток 1;

  • 27 : 2 = 13 остаток 1;

  • 13 : 2 = 6 остаток 1;

  • 6 : 2 = 3 остаток 0;

  • 3 : 2 = 1 остаток 1;

  • 1 : 2 = 0 остаток 1.

Получили 1101112.

Приведу еще примеры со сложением, вычитанием, умножением и делением.

Сложение:

1001

1010

----

10011

Вычитание:

1110

0101

----

1001

Умножение:

1110

0101

----

1110

0000

1110

0000

-------

1000110

Деление:

1000110|101

101 -----

---- 0001110

111

101

---

101

101

---

00

Восьмеричная и шестнадцатеричная системы счислений

Компьютерам очень удобно оперировать двоичными числами, но люди не привыкли работать с большим количеством цифр. Например, чтобы представить в двоичном виде число 1234 потребуется больше 10 двоичных цифр (10011010010). Поэтому были придуманы восьмеричная и шестнадцатеричная системы счислений. Они удобны как и десятичные числа тем, что для представления числа требуется меньшее количество разрядов. А по сравнению с десятичными числами, перевод в двоичное представление очень простой. Это как будто мы двоичное число разбили на группы по три или четыре разряда и каждой двоичной комбинации придумали значок. Вот таблица для восьмеричных цифр:

Двоичная комбинация

Значок

000

0

001

1

010

2

011

3

100

4

101

5

110

6

111

7

А вот таблица для шестнадцатеричных цифр:

Двоичная комбинация

Значок

0000

0

0001

1

0010

2

0011

3

0100

4

0101

5

0110

6

0111

7

1000

8

1001

9

1010

A

1011

B

1100

C

1101

D

1110

E

1111

F

Перевод произвести очень просто, посмотрим на примере числа 10011010010.

Разбиваем его на группы по три цифры: 010 011 010 010. И по таблице переводим: 23228.

Чтобы перевести число в шестнадцатеричное представление разбиваем двоичное число на группы по четыре цифры: 0100 1101 0010. И по таблице переводим: 4D216. С помощью калькулятора Windows мы можем убедиться, что все проделано верно.

В программистских кругах шестнадцатеричные числа принято предварять значком 0x (например, 0x4D2), такое написание пошло от языка программирования C, либо значком $ (например, $4D2), такая нотация произошла от языка программирования Pascal. Иногда в литературе используют буквы "h" и "b" для обозначения соответственно шестнадцатеричных и двоичных чисел (например, FFh или 1011b).

Соседние файлы в предмете Информатика