- •Алгоритмы перевода чисел
- •Алгоритм перевода чисел из двоичной системы счисления в систему счисления с основанием 2n
- •Алгоритм перевода чисел из систем счисления с основанием 2n в двоичную систему
- •Какие системы счисления используют специалисты для общения с компьютером?
- •Почему люди пользуются десятичной системой, а компьютеры — двоичной?
- •Арифметические операции в позиционных системах счисления
- •Арифметические операции в восьмеричной системе счисления
- •Компьютерное представление чисел
- •Представление целых чисел в формате с фиксированной запятой
- •Целые числа без знака.
- •Целые числа со знаком: прямой, обратный и дополнительный коды.
- •1) Модуль числа записать в прямом коде в n двоичных разрядах;
- •2) Получить обратный код числа, для этого значения всех бит инвертировать – все единицы заменить на нули и все нули заменить на единицы);
- •3) К полученному обратному коду прибавить единицу. Получим дополнительный код целого числа со знаком.
- •Целые числа в формате с фиксированной точкой, представленные m разрядами
- •Представление вещественных чисел в формате с плавающей запятой
- •Точность представления чисел
Компьютерное представление чисел
Информация в памяти ЭВМ записывается в форме цифрового двоичного кода.
С этой целью ЭВМ содержит большое количество ячеек памяти и регистров (от лат. regestrum – внесенное, записанное) для хранения двоичной информации.
Ячейка– это часть памяти, вмещающая в себя информацию, доступную для обработки отдельной командой процессора.
Наименьшая последовательность бит, которую компьютер может обрабатывать как единое целое (содержимое ячейки памяти), называют байтом.
Наибольшая последовательность бит, которую компьютер может обрабатывать как единое целое (содержимое ячейки памяти), называют машинным словом.
Элементарная ячейка памяти ЭВМ имеет длину 8 бит (1 байт). Каждый байт имеет свой номер (его называют адресом). Длина машинного слова зависит от разрядности процессора и может быть равной 16, 32, 64 битам и т.д. Адрес машинного слова в памяти компьютера равен адресу младшего байта, входящего в это слово.
Машинное слово, состоящее из 16 бит (2-х байт) представлено на рис.1. Разряды нумеруются справа налево, начиная с 0. Самый левый является старшим разрядом (на рисунке с номером 15), самый правый – младшим (на рисунке с номером 0).
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
бит |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
байт |
байт |
||||||||||||||
Слово |
|||||||||||||||
Рис. 1. Бит, байт, слово
В вычислительной технике используются два формата представления двоичных чисел:
- с фиксированной запятой (точкой);
- с плавающей запятой (точкой).
Формат с фиксированной запятой применяется к целым числам, формат с плавающей запятой - к вещественным (действительным) числам.
Представление целых чисел в формате с фиксированной запятой
Множество целых чисел, представимых в памяти ЭВМ, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых для их хранения.
Так в n-разрядной ячейке может храниться 2n различных значений целых чисел. Так в 8-разрядной ячейке может храниться 28=256 различных значений, в 16-разрядной – 216=65536 различных значений.
Целые числа могут представляться в компьютере без знака и со знаком.
Целые числа без знака.
Обычно
занимают в памяти компьютера один, два
и т д байта. Максимальное значение целого
числа без знака (положительного числа)
достигается в случае, когда во всех
ячейках хранятся единицы. Для
n-разрядного
представления оно будет равно
.
Диапазон значений: 0÷
Для
8-разрядной ячейки максимальное значение
целого положительного числа достигается
в случае, когда во всех ячейках
хранятся единицы и равно
.
Минимальное число соответствует восьми нулям, хранящимся в восьми битах ячейки памяти, и равно нулю. Следовательно, в 8-разрядной ячейке диапазон изменения целых чисел без знака: от 0 до 255.
В 16-разрядной ячейке - от 0 до 65535 (всего 65536 значений).
Так, число 111000012 будет храниться в 8-разрядной ячейке памяти следующим образом:
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
В 16-разрядном представлении число 200610=111110101102 будет храниться следующим образом:
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
Итак, чтобы получить внутреннее представление целого числа без знака А, хранящегося в n-разрядном машинном слове, необходимо:
1) перевести число А в двоичную систему счисления;
2) полученный результат дополнить слева незначащими нулями до n разрядов.
