Представление целых и действительных чисел в двоичном коде.
Совокупность двоичных разрядов данных в ЭВМ образуют некий битовый рисунок. Группа из восьми взаимосвязанных битов называется байтом. Байт – — это минимальная по размеру адресуемая часть памяти компьютера.
Существует несколько типов чисел. Числа могут быть положительные и отрицательные, целые точные, дробные точные, рациональные, иррациональные, дробные приближенные. Оптимального представления в памяти ЭВМ для всех типов чисел создать невозможно, поэтому для каждого в отдельности типа создается собственный способ представления.
Целые положительные числа от 0 до 255 можно представить непосредственно в двоичной системе счисления, при этом они будут занимать один байт в памяти компьютера (см. табл. 1.4).
Таблица 1.4.Представление целых положительных чисел в двоичной системе счисления
Число | Двоичный код |
0000 0000 | |
0000 0001 | |
0000 0010 | |
0000 0011 | |
… | … |
1111 1111 |
Знак отрицательного числа кодируется обычно старшим битом, нуль интерпретируется как плюс, единица как минус. Поскольку один бит будет занят, то одним байтом могут быть закодированы целые числа в интервале от –127 до +127. Такой способ представления целых чисел называется прямым кодом. Существует способ кодирования отрицательных целых чисел в обратном коде. В этом случае положительные числа совпадают с положительными числами в прямом коде, а отрицательные получаются в результате вычитания из двоичного числа 1 0000 0000 соответствующего положительного числа, например, число –7 получит код 1111 1000. Целые числа больших диапазонов представляются в двухбайтовых и четырехбайтовых адресах ячейках памяти.
Точность представления действительных чисел в памяти ЭВМ ограничена. Для представления действительных чисел используется форма их записи, называемая формой с плавающей точкой:
, (1.4.3)
где - — мантисса числа, - — основание системы счисления, - — целое число, называемое порядком. При этом для десятичной системы счисления мантисса выбирается в диапазоне , т. е. . Такая форма представления называется нормализованной.
Существует несколько международных стандартов представления действительных чисел в памяти компьютера. Рассмотрим четырехбайтовый стандарт (см. рис. 1.4). Здесь зафиксированы три группы разрядов. Первый разряд хранит знак мантиссы. За ним следуют разряды, определяющие порядок. С первого по двадцать третий разряд располагается сама мантисса числа. Вместо истинного порядка хранится число, называемое характеристикой (или смещенным порядком). Характеристика равна порядку со смещением, причем смещение используется для более удобного хранения положительных и отрицательных действительных чисел.
Чем больше разрядов отводится под запись мантиссы, тем выше точность представления числа. Чем больше разрядов занимает порядок, тем шире диапазон представления чисел в компьютере при заданном формате.
Рис. 1.4.Четырехбайтовое представление действительного числа
Для представления основных видов информации (числа, символы, графика, звук) в системах программирования используются специального вида абстракции – — типы данных. Каждый тип данных определяет логическую структуру представления и интерпретации для соответствующих данных.
[K1] 1.5. [S2] Практическое занятие № 1. Системы счисления. Перевод чисел из одной системы счисления в другую. Арифметические операции в позиционных системах счисления
При переводе чисел из десятичной системы счисления в систему с основанием используется следующий алгоритм (см. раздел . 1.4):
q целое число делится на с остатком, остаток от деления запоминается. Полученное частное вновь делится на , остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления на выписываются в порядке, обратном их получению;
q дробное число умножается на , после чего целая часть запоминается и отбрасывается. Вновь полученная дробная часть опять умножается на и т. д. Процедура продолжается до тех пор, пока дробная часть не станет равной нулю. Целые части выписываются после запятой в порядке их получения. Результатом может быть либо конечная, либо бесконечная -ичная дробь.
Пример 1. Перевести данные числа из десятичной системы счисления в двоичную, пятеричную, восьмеричную и шестнадцатеричную систему: а) ; б) .
В разделе . 1.4 приведены схемы перевода чисел из десятичной системы в любую -ичную систему. Запишем эту схему в столбик, одновременно переводя целую и дробную часть числа.
а)
б)
Обратный перевод чисел из -ичной системы счисления в десятичную основан на формуле (1.4.2).
Пример 2. Перевести в десятичную систему числа, полученные в п. а) примера 1.
Если необходимо перевести число из двоичной системы счисления в систему, основанием которой является степень двойки, достаточно объединить цифры двоичного числа в группы по столько цифр, каков показатель степени, причёем в целой части числа группировка производится от запятой справа налево, а в дробной – — слева направо. Если в последней группе недостаёет цифр, дописываются нули: в целой части – — слева, в дробной – — справа. Затем каждая группа заменяется соответствующей цифрой новой системы.
Пример 3. Переведёем число в восьмеричную и шестнадцатеричную системы.
; ;
Для выполнения арифметических операций в системе счисления с основанием необходимо иметь соответствующие таблицы сложения и умножения. Таблицы сложения и умножения в двоичной и восьмеричной системе приведены в разделе . 1.4 (табл. 1.1 и 1.2); в шестнадцатеричной системе они имеют следующий видпоказаны в (см. табл. 1.5 и 1.6).
В -ичных системах счисления все арифметические действия происходят точно так же, как и в десятичной системе. Например, при сложении цифры одинаковых разрядов суммируются, и если при этом возникает избыток (переполнение разряда), то он переносится влево в следующий разряд.
Таблица 1.5. Сложение в шестнадцатеричной системе счисления
+ | А | В | С | D | E | F | ||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | A | B | C | D | E | F | ||||||||||
B | B | C | D | E | F | 1A | ||||||||||
C | C | D | E | F | 1A | 1B | ||||||||||
D | D | E | F | 1A | 1B | 1C | ||||||||||
E | E | F | 1A | 1B | 1C | 1D | ||||||||||
F | F | 1A | 1B | 1C | 1D | 1E |
Таблица 1.6.Умножение в шестнадцатеричной системе счисления
´ | А | В | С | D | E | F | ||||||||||
A | B | C | D | E | F | |||||||||||
A | C | E | 1A | 1C | 1E | |||||||||||
C | F | 1B | 1E | 2A | 2D | |||||||||||
C | 1C | 2C | 3C | |||||||||||||
A | F | 1E | 2D | 3C | 4B | |||||||||||
C | 1E | 2A | 3C | 4E | 5A | |||||||||||
E | 1C | 2A | 3F | 4D | 5B | |||||||||||
1B | 2D | 3F | 5A | 6C | 7E | |||||||||||
A | A | 1E | 3C | 5A | 6E | 8C | ||||||||||
B | B | 2C | 4D | 6E | 8F | 9A | A5 | |||||||||
C | C | 3C | 6C | 9C | A8 | B4 | ||||||||||
D | D | 1A | 4E | 5B | 8F | 9C | A9 | B6 | C3 | |||||||
E | E | 1C | 2A | 7E | 8C | 9A | A8 | B6 | C4 | D2 | ||||||
F | F | 1E | 2D | 3C | 4B | 5A | A5 | B4 | C3 | D2 | E1 |
Пример 4.
Пример 5.
Выполняя умножение многозначных чисел в различных позиционных системах счисления, можно использовать обычный алгоритм перемножения чисел в столбик, но при этом результаты перемножения и сложения однозначных чисел необходимо брать из соответствующих рассматриваемой системе счисления таблиц умножения и сложения.
Пример 6.
Проверка: ;
;
;
;
Проверка: ;
; ;
;
Проверка: ;
;
;
;
Проверка: ;
;
;
.
Деление в любой позиционной системе счисления производится по тем же правилам, что и деление углом в десятичной системе.
Пример 7.
Проверка: ;
;
: ;
;
Проверка: ;
;
: ;
;
Проверка: ;[K3]
;
: ;
;
Проверка: ;
;
: ;;
.
[K4] 1.5.1. Заполните таблицу. 1.7.:
Таблица 1.7
Десятичная с/с | Двоичная с/с | Троичная с/с | Четверичная с/с |
42.13 | |||
10111.101 | |||
212.122 | |||
3312.23 |
1.5.2. Заполните таблицу. 1.8.:
Таблица 1.8
Десятичная с/с | Пятеричная с/с | Шестеричная с/с | Семеричная с/с |
95.375 | |||
43.124 | |||
513.42 | |||
14.65 |
1.5.3. Заполните таблицу. 1.9.:
Таблица 1.9
Десятичная с/с | Двоичная с/с | Восьмеричная с/с | Шестнадцате- ричная с/с |
117.15 | |||
1110111.11 | |||
757.65 | |||
5B.4A |
1.5.4. Переведитести в двоичную и восьмеричную системы шестнадцатеричные числа:
а) ; б) ; в) ; г) .
1.5.5. Составьитье таблицы сложения и умножения в системе счисления:
а) троичной; б) четверичной.
1.5.6. Выполнитеь действия:
а) ;
б) ;
в) ;
г) .
1.5.7. Выполнитье действия:
а) ;
б) ;
в) ;
г) .
1.5.8. Выполнитеь действия:
а) ;
б) ;
в) ;
г) .
1.5.9. Выполнитье действия (до трёех знаков после запятой):
а) : ;
б) : ;
в) : ;
г) : .
1.5.10. Расположитье следующие числа в порядке возрастания:
а) , , , ;
б) , , , ;
в) , , , ;
г) , , , .
1.5.11. Выполните Варианты ррасчёетно-графическуюой работу по вариантам.ы
Задание к расчётно-графической работе:
1. Переведитести данное число из десятичной системы счисления в двоичную, пятеричную и шестнадцатеричную системы счисления.
2. Перевестидите данное число в десятичную систему счисления.
3. Выполнитье сложение и вычитание.
4. Выполнитье умножение.
5. Выполнитье деление (до трёех знаков после запятой).
Вариант 1
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 2
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 3
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 4
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 5
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 6
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 7
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 8
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 9
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 10
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 11
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 12
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 13
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 14
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 15
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 16
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 17
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 18
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 19
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 20
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 21
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 22
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 23
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 24
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 25
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 26
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 27
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 28
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 29
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
Вариант 30
1. а) ; б) ;
2. а) ; б) ;
3. а) ; б) ;
4. а) ; б) ;
5. : .
[1] Владимир Александрович Котельников (1908—1997 гг.) — советский физик (радиотехник).
[2] Владимир Александрович Котельников (1908—1997 гг.) — советский физик (радиотехник).
* Владимир Александрович Котельников (1908 - 1997) – советский физик (радиотехник).