ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.12.2023
Просмотров: 442
Скачиваний: 5
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
12
Рисунок 1.1
Позиционные системы счисления имеют следующие свойства.
1. Наибольшее число, которое можно записать в r - разрядной сетке, где r = n + m, получается, когда цифры всех разрядов имеют наибольшую величину:
i
d = p - 1. При этом,
(
) (
)
)
(
)
1
(
1
)
1
(
1
)
1
(
1 1
1 1
1 1
m
n
n
m
m
n
n
m
n
m
i
i
n
m
i
n
m
i
i
i
i
n
m
i
i
наиб
p
p
p
p
p
p
p
p
p
p
p
p
p
p
А
−
−
−
−
−
−
−
−
−
−
=
−
−
=
−
−
=
+
+
−
−
=
−
=
+
+
+
−
+
+
+
=
=
−
=
−
=
−
=
∑
∑
∑
∑
В частности для целого числа ( m = 0) А
наиб
= р
n
- 1, a для дроб- ного числа ( п = 0) А
наиб
= 1 – р
-m
2. Наименьшее число, не равное нулю, получается, когда цифра младшего разряда равна 1, а во всех остальных разрядах цифры
0
i
d
=
Для числа, записываемого в r - разрядной сетке (r = n + m), А
наим
= р
-m
. Для целого числа (m = 0) А
наим
= 1.
3. Шагом (дискретностью) чисел h называется интервал между двумя ближайшими числами, которые могут быть записаны в задан- ной разрядной сетке. Величина шага равна весу младшего разряда:
m
p
h
−
=
Все числа от А
наим
до А
наиб
распределены с шагом h.
4. Количество различных чисел, которые можно записать в r- разрядной сетке (где r = n + m) равно:
1 1
r
m
n
m
m
n
наим
наиб
p
p
p
p
p
А
А
N
=
=
+
−
=
+
=
+
−
−
5. Количество разрядов, нужное для записи целого числа А в системе с основанием р, находится из условия
,
1
−
=
≤
n
наиб
p
A
A
откуда
)
1
(
log
+
≥
A
n
p
или int log (
1)
p
n
A
=
+
,
13 где функция int осуществляет округление аргумента до ближайшего большего целого числа.
1.1.2 Двоичная система счисления
Основанием двоичной системы счисления является число 2, то есть в ней используются только две цифры: 0 и 1. Любое число в дво- ичной системе счисления записывается как комбинация цифр 0 и 1.
Двоичная система счисления нашла широкое применение в циф- ровых ЭВМ. Это обусловлено следующими основными её достоинст- вами.
1. Существует большое число устройств, имеющих два устойчи- вых состояния (закрытый или открытый транзистор, намагниченный или размагниченный сердечник, наличие или отсутствие импульса) которые могут быть приняты в качестве физического эквивалента символов 0 и 1. Это значительно упрощает автоматическую реализа- цию процессов записи, хранения, считывания и обработки двоичных чисел.
2. Арифметические и особенно логические операции над двоич- ными числами выполняются наиболее просто.
3. Для представления каждой цифры любого алфавита отводится определенный поддиапазон некоторой физической переменной. За счет помех и погрешностей измерения возникают ошибки представ- ления информации этой переменной. Эти ошибки минимальны при двоичном алфавите.
В соответствии с формулой (1.1) некоторое число А в двоичной системе счисления (р = 2) можно записать в виде
∑
−
−
=
−
−
−
=
=
1 1
0 1
1
,
2
n
m
i
i
i
m
n
d
d
d
d
d
d
A
(1.2) где цифры d
i
равны 0 или 1.
Для известных значений цифр d
i
можно найти значение числа в десятичной системе счисления.
Например,
А = 11011,11 = 1
⋅
2 4
+ 1
⋅
2 3
+ 0
⋅
2 2
+ 1
⋅
2 1
+ 1
⋅
2 0
+ 1
⋅
2
-1
+ 1
⋅
2
-2
=
27,75
Одними из основных недостатков двоичной СС является: трудо- емкость перевода в нее чисел из десятичной СС, которой пользуется человек, и громоздкая форма записи.
14
Так для записи трехзначного числа десятичной СС требуется не менее 10 разрядов двоичной СС. Для более компактной записи чисел двоичной СС используют вспомогательные системы счисления с ос- нованием 2
n
- восьмеричную (2 3
) или шестнадцатеричную (2 4
) CC и двоично-десятичную СС.
1.1.3 Двоично-десятичная система счисления
Двоично-десятичная система счисления является гибридной, в этой системе цифры десятичной системы счисления представлены в виде двоичного кода. Для этой цели под каждый разряд десятичного числа отводится четыре разряда двоичного числа.
Запись и чтение чисел в двоично-десятичной системе счисления поясним на примерах.
Пример 1. Записать число 1983 в двоично-десятичной системе счисления.
Для этого каждый знак числа в десятичной системе счисления представляем в виде четырехразрядного двоичного кода (рисунок 1.2) и записываем полученное выражение в ряд:
1983
→
0001100110000011
Рисунок 1.2 - Переход от десятичной к двоично-десятичной записи числа
Пример 2. Прочитать число, записанное в двоично-десятичной системе счисления 1000010010010101.
Для прочтения числа необходимо разделить его на декады, на- чиная с младшего (самого правого) разряда, по четыре разряда дво- ичного числа в каждой. Далее прочитать результат для каждой дека- ды в виде цифры десятичной системы счисления (рисунок 1.3).
1000 0100 1001 0101 8 4 9 5
Рисунок 1.3 – Результат преобразования: 8495
15
Двоично-десятичная система широко используется в контроль- но-проверочной аппаратуре самолетных ответчиков СО-69, СО-73 и других устройствах, в которых информация о десятичном числе запи- сана в виде двоичного кода.
1.1.4 Системы счисления по основанию 2
n
На практике часто возникает проблема компактной записи дво- ичных чисел. При этом перевод записанного числа в двоичную сис- тему должен быть простым и не требовать громоздких вычислений.
Этим требованиям удовлетворяют системы счисления с основанием
2
n
: четверичная (2 2
), восьмеричная (2 3
), шестнадцатеричная (2 4
), три- дцатидвухричная (2 5
) и т.д. Для перевода из двоичной системы счис- ления в СС с основанием 2
n
число разбивается на части по п разрядов и каждая часть записывается цифрой новой системы счисления. Для р
=4 d
∈
{0, 1, 2, 3}, для р =8 d
∈
{0, 1, 2, 3, 4, 5, 6, 7}, для р =
2
n
d
∈
{0, 1, ...р- 1}.
При использовании р = 4 (п = 2) исходное слово двоичной СС разбивается на части по 2 разряда, поэтому результирующее число имеет всего лишь в два раза меньше цифр. Поэтому использование четверичной СС малоэффективно. Системы счисления с п > 4 также малоэффективны так как в этом случае необходимо помнить много символов, обозначающих цифры этих СС. Например, для n = 5 число цифр равно 32.
Наибольшее распространение получили восьмеричная (п = 3) и шестнадцатеричная (п = 4) СС.
Для перевода двоичного числа в восьмеричную (шестнадцате- ричную) СС необходимо разбить двоичное число вправо и влево от запятой на триады (тетрады) и заменить каждую триаду (тетраду) равной ей восьмеричной (шестнадцатеричной) цифрой. Если при раз- биении крайние триады (тетрады) окажутся неполными, то их следует дополнить нулями.
Например,
1110001101,0111 = 001 110 001 101, 011 100 =
= 1 6 1 5, 3 4
(8)
111011110001,0111101 = 1110 1111 0001, 0111 1010 =
= Е F 1, 7 A
(16)
16
В таблице 1.1 приведены значения некоторых чисел в различных
СС.
Таблица 1.1 Запись чисел в различных ПСС
Основание ПСС
p = 10
p = 16
р = 8
p = 2
p = "2 - 10"
0 0
0 000 0000 1
1 1
001 0001 2
2 2
010 0010 3
3 3
011 0011 4
4 4
100 0100 5
5 5
101 0101 6
6 6
110 0110 7
7 7
111 0111 8
8 10 1000 1000 9
9 11 1001 1001 10
А
12 1010 00010000 11
В
13 1011 00010001 12
С
14 1100 00010010 13
D
15 1101 00010011 14
Е
16 1110 00010100 15
F
17 1111 00010101 16 10 20 10000 00010110
-
-
-
-
-
59 3B
73 111011 01011001 1.2 Арифметические действия в позиционных системах счисления и перевод чисел из одной системы счисления в другую
1.2.1 Арифметические действия в двоичной системе счисления
Арифметические действия в любой ПСС выполняют с использо- ванием таблиц умножения, сложения и вычитания по правилам, ана- логичным правилам десятичной арифметики.
Наиболее простыми из упомянутых выше таблиц являются таб- лицы для двоичной системы:
17 таблица умножения таблица сложения таблица вычитания
0
⋅
0 = 0 0 + 0 = 0 0 - 0 = 0 0
⋅
1 = 0 0 + 1 = 1 1 - 1 = 0 1
⋅
0 = 0 1 + 0 = 1 1 - 0 = 1 1
⋅
1 = 1 1 + 1 = 10 10 - 1 = 1
Старшие цифры двухразрядной суммы и уменьшаемого называ- ют соответственно переносом и займом.
Сложение многоразрядных чисел
m
n
a
a
а
А
−
−
=
0 1
и
m
n
b
b
b
B
−
−
=
0 1
выполняется поразрядно, начиная с младшего разря- да, с учетом правил таблицы сложения. Перед сложением количество разрядов целой и дробной части слагаемых уравнивается путем до- бавления незначащих нулей - в дробной части справа, а в целой части слева от разрядов чисел. В каждом i - ом разряде производится сло- жение трех цифр
i
i
i
p
b
a
+
+
, где
i
p
- цифра переноса из предыдущего
(i - 1) разряда.
Пример:
Р
i
=110111 0
A = 11011,11
+
B = 01001,10
A + B =100101, 01
Вычитание многоразрядных чисел производится также пораз- рядно, причем, если цифра вычитаемого больше цифры уменьшаемо- го, то занимается 1 из следующего по старшинству разряда. Занятая единица приравнивается к двум единицам данного разряда.
Пример:
1+1 1+1 1+1
A = 1 1 0 1 1 , 1 0
-
B = 0 1 1 0 1 , 0 1
A - B = 0 1 1 1 0 , 0 1
Умножение многоразрядных двоичных чисел производится пу- тем образования частичных произведений и их суммирования. Пусть даны числа
m
n
a
a
а
А
−
−
=
0 1
и
1 0
1 1
m
n
b
b
b
B
−
−
=
Тогда
∑
∑
∑
−
−
=
−
−
=
−
−
=
=
=
=
⋅
=
1 1
1 1
1 1
1 1
1
П
2 2
П
n
m
i
i
n
m
i
i
i
n
m
i
i
i
Ab
b
А
В
А
, где
i
i
i
Ab 2
П
=
- частичное произведение, образуемое путем умноже-
18 ния множимого А на цифру множителя
i
b
и ее весовой коэффициент
2
i
Умножению числа А на 2 соответствует сдвиг всех цифр этого числа на один разряд влево, т.е. в сторону старшего разряда:
(
)
2 2
2 2
2 2
2 2
2 2
2
)
1
(
0 1
1 0
1 2
1 0
0 2
2 1
1
+
−
−
−
−
−
−
−
−
−
−
−
−
⋅
+
+
+
+
+
⋅
+
⋅
=
=
⋅
⋅
+
+
+
+
⋅
+
⋅
=
m
m
n
n
n
n
m
m
n
n
n
n
a
a
a
a
a
a
a
a
a
А
С учетом этого для получения частичных произведений
i
П
дос- таточно сдвинуть код множимого на i разрядов влево (при i >0) или вправо (i < 0) и умножить его на 0 или 1 в зависимости от значения
i
b
Пример,
А =
1 0 1 , 1 0
В =
×
1 1 , 0 1
П
-2
= А
⋅
1
⋅
2
-2
= 1 , 0 1 1 0
П
-1
= А
⋅
0
⋅
2
-1
= 0 0 , 0 0 0
П
-0
= А
⋅
1
⋅
2 0
= 1 0 1 , 1 0
П
-1
= А
⋅
1
⋅
2 1
= 1 0 1 1 , 0
П = А
⋅
В = 1 0 0 0 1 , 1 1 1 0
При выполнении умножения на бумаге можно не указывать по- ложений запятой в частичных произведениях, следует лишь правиль- но записать коды один под другим и произвести их сложение. Поло- жение запятой в произведении определяется числом разрядов в его дробной части, которое равно сумме чисел разрядов в дробных частях множимого и множителя.
Деление многоразрядных чисел производится по таким же пра- вилам, как и в десятичной системе счисления. Перед делением в де- лимом и делителе уравнивается количество цифр после запятой путем добавления нулей, затем запятые отбрасываются. Процедура нахож- дения частного иллюстрируется на примере деления числа А =
1100,011 на число В = 10,01:
Делимое Делитель
1 1 0 0 , 0 1 1 1 0 , 0 1 0
-
1 0 0 1 0 1 0 1 , 1 0 0 1 1 0 1 1
Частное
1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 0 0
19 1.2.2 Сложение и умножение чисел по модулю
При аппаратурной реализации устройства цифровой обработки информации обычно существуют ограничения на длину разрядной сетки, т.е. количество разрядов целой и дробной части. В этом случае, вне зависимости от реального значения, результат арифметических операций будет также ограничен разрядной сеткой. Пусть цифровое устройство работает только с целыми числами, для записи которых используется n, разрядов. Произведем сложение двоичных чисел А и
В. Если сумма С = А + B < 2
n
, то она может быть записана в п разря- дах. Но может оказаться, что С
≥
2
n
, в этом случае для регистрации суммы потребовался бы еще один дополнительный разряд слева с ве- сом 2
n
. Так как в разрядной сетке этого разряда нет, то результат бу- дет соответствовать остатку от деления суммы С на величину М = 2
n
,
(деление на
2
n
соответствует сдвигу числа вправо на п разрядов).
Этот остаток и называется суммой чисел А и В по модулю 2
n
. Для обозначения суммы по модулю применяется запись
[ ]
[
]
2
mod
2
mod
n
n
B
A
С
+
=
Операции сложения и умножения чисел по модулю могут про- изводиться в любой системе счисления при любой величине модуля
М.
Например, при сложении двоичных чисел А = 10110
(2)
= 22
(10)
и
В = 10011
(2)
= 19
(10)
получаем А + В = 101001
(2)
= 41
(10)
. В рамках 5 - разрядной сетки старший разряд этой суммы не регистрируется (2 5
=
32). В результате будет зарегистрировано число, равное значению указанной суммы по модулю М = 2 5
:
[
]
[
]
(10)
(2)
5 5
9 01001 2
mod
101001 2
mod
=
=
=
+
В
А
Произведение двоичных чисел А = 01011
(2)
и В = 00111
(2)
равно
А
⋅
В = 1001101
(2)
= 77
(10)
в рамках пятиразрядной сетки будет зареги- стрировано число, равное значению найденного произведения по мо- дулю 2 5
, т.е.:
[
]
[
]
13 01101 2
mod
1001101 2
mod
(10)
(2)
5 5
=
=
=
⋅
В
А
1.2.3 Перевод чисел из одной системы счисления в другую
Для перевода чисел из системы счисления с основанием q в сис- тему счисления с основанием р могут быть использованы следующие