Файл: Сарингулян, Э. В. Арифметические и логические основы цифровых машин учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 31.10.2024
Просмотров: 47
Скачиваний: 0
|
|
Т а б л и ц а 2.4 |
Десятичные |
Двоичные |
Восьмеричные |
числа |
числа |
числа |
0 |
0 |
0 |
1 |
1 |
1 |
') |
10 |
2 |
3 |
11 |
3 |
4 |
100 |
4 |
5 |
101 |
5 |
Г) |
п о |
6 |
7 |
111 |
7 |
8 |
1000 |
10 |
9 |
1001 |
11 |
10 |
1010 |
12 |
11 |
1011 |
13 |
12 |
1100 |
14 |
13 |
1101 |
15 |
14 |
1110 |
16 |
15 |
1111 |
17 |
16 |
10000 |
20 |
Восьмеричное число =273 перевести в двоичную си стему.
Основание двоичной системы имеет восьмеричную запись 2. При переводе будем последовательно делить /Vw на 2, поль зуясь правилами исходной оистемы.
2 |
остатки |
|
|
2 / 3 (8> |
1 |
|
|
|
|
||
135 |
1 |
|
|
56 |
0 |
|
|
27 |
1 |
273,8;- Ю11101 1гг; |
|
13 |
1 |
||
|
|||
5 |
1 |
|
|
2 |
0 |
|
|
1 |
1 |
|
14
Для получения десятичного эквивалента числа /фа; = 273 представим основание этой системы в восьмеричной записи: 10(io;-> 12(В;. Тогда в соответствии с правилами перевода
1) |
273(8; |
: |
12(8j = |
22f8j |
остаток |
7(В;- » - 7^0)> “ |
2) |
22(8) |
: |
12;а; = |
1(8) |
остаток |
Юдо -> Яц0). |
3)1(8) : 12,8)== 0 остаток 1(8)Ч- 1,,^,
273(8) -*■ 187(Ю).
Для проверки переведем вычисленное десятичное число Т/оо) в двоичную систему счисления. При делении на основа ние 2 образуется полученный ранее двоичный эквивалент
2 |
остатки |
|
87„0) |
1 |
|
93 |
1 |
|
46 |
0 |
|
23 |
1 |
187,10, -> 10111011(2) |
11 |
1 |
|
5 |
1 |
|
2 |
0 |
|
1 |
1 |
|
Для ввода исходных десятичных чисел в машину необхо димо их представить с помощью тех двухпозиционных элемен тов, на которых выполнены блоки и узлы машины. Эту задачу позволяет решить так называемая двоично-десятичная запись.
Чтобы изобразить десятичные цифры через двоичные раз ряды, необходимо выделить четыре разряда, имеющих веса 2°, 21, 22, 23. Тогда любая десятичная цифра может быть пред ставлена соответствующей двоичной тетрадой, например,
8(Ю) 1000(2), 3(Ю) —v 0011(2), 5(Ю) -> 0101(2) и т. д.
Двоично-десятичное кодирование состоит в замене каждой десятичной цифры числа определенной двоичной тетрадой. На пример, десятичное число 7V(io, =941,375 при двоично-десяглч- ном кодировании будет преобразовано следующим образом:
941,375,ю,-^ 100Г 0100 |
0001, |
ООП 0111 |
0101,210) |
||
9 |
4 |
1 |
3 |
7 |
5 |
При обратном переводе число в двоично-десятичной записи разбивают на тетрады и заменяют их эквивалентными деся тичными цифрами. Например,
0010 1000, 001_^ ОЮ^(2/1о)-> 28,35(,0).
2 |
8 |
3 |
§ |
15
Как видно, ни прямой, ни обратный перевод при двоичнодесятичном кодировании не связан с арифметическими опера циями. Эту особенность рассмотренной формы записи исполь зуют во внешних устройствах машины, где с помощью шифра торов в процессе набора исходных десятичных чисел последние изображаются обычно в виде системы пробивок, соответст вующей двоично-десятичному коду, на перфолентах или перфо картах. Затем устройства ввода преобразуют двоично-десятич ные коды в последовательность электрических сигналов для передачи их во внутренние устройства машины, где по специ альной программе осуществляется дальнейший перевод двоич но-десятичных кодов в двоичную систему счисления. И затем уже весь вычислительный процесс в ЭЦВМ реализуется по двоичной системе.
Перевод из двоично-десятичной формы записи чисел в двоичную обычно выполняется в машинах по вависимости (2.1). По этой зависимости каждая десятичная цифра числа множится на основание десятичной системы в соответствую щей степени, причем арифметические операции в процессе пе ревода реализуются по двоичной системе. Двоичный код вы числяется как сумма полученных произведений.
Например,
187(H), = Ы 0 2+ 8-10'+ 7-10°-> 0001 1000 |
0111 (2/ш, — |
||
|
1 |
~~8 |
|
0001 ■101010+ 1000- 10101+ |
0111- 1010° - |
||
- - 0001- 1100100-К 1000-1010 + |
011Ы |
-* |
|
-V 1100100+ 1010000+111 ^ |
10111011(2). |
Двоично-десятичное кодирование используется также как про межуточное при выводе из машины результатов решения, кото рые предварительно необходимо преобразовать из двоичной в десятичную систему.
В некоторых машинах двоично-десятичная запись является основной (отечественные машины «Эра», «Преминь»). Это поз воляет при некотором увеличении оборудования машины ис ключить необходимость программного перевода чисел при из менении системы счисления.
Если исходная числовая информация представляется в де сятичной системе, то командная информация (номера команд, коды операций и адреса) при программировании кодируется па бланках в восьмеричной системе, характеризующейся сле дующей особенностью.
Восьмеричная система счисления имеет основание 8, пред ставляющее целую степень основания 2(8=^23). Поэтому пере вод восьмеричного числа в двоичный эквивалент прост и со
16
стоит в замене каждой восьмеричной цифры соответствующей двоичной триадой (три двоичных разряда).
Например,
725,31(8)-» 11Ю10101, |
011001(a). |
5 |
3 Г |
Шифраторы внешних устройств |
переводят восьмеричные |
числа в двоичные без дополнительных арифметических опера ций. Далее с помощью устройств ввода команды поступают во внутренние блоки ЭЦВМ двоичными кодами, которые пере даются по магистралям машины в виде последовательности электрических сигмалов.
При обратном переводе двоичное число необходимо раз
бить на триады с последующей |
заменой их |
восьмеричными |
|||
цифрами. Например, Л^2) =11010 110, |
11101. |
При переводе по |
|||
лучим |
|
|
|
1П 0Ю — 326,72(8). |
|
11010110, 11101 (?) = 011 010 ПО, |
|||||
<— |
—» |
~з ~9— |
ПТ |
~Т~ ~2~ |
Анализ использования двоичной системы счисления в циф ровых машинах показал, что несмотря на увеличение количе ства двоичных разрядов, необходимых для кодирования деся тичных чисел, применение этой системы при двухпозициоиных элементах наиболее выгодно.
§2.2. Формы представления чисел и их запись в машине
Вэлектронной цифровой вычислительной машине числа изображаются определенным количеством двоичных разрядов.
Положение запятой в числе, отделяющей целую часть от дроб ной, может определяться различными способами.
В ряде машин положение запятой в числах фиксируется пе ред некоторым определенным разрядом. Такая форма пред ставления чисел носит название естественной, а машины отно сятся к классу ЭЦВМ с фиксированной запятой. Преимущест венно запятая закрепляется перед первым старшим разрядом, т. е. все числа при расчете должны быть меньше единицы, что достигается соответствующим масштабированием исходных ве личин. Очевидно, что при конечном числе разрядов, которыми располагает машина, при реализации арифметических опера ций могут .получаться двоичные числа, по абсолютной величи не большие 0,111...11 или меньшие 0,000...01. Получение ре зультатов по модулю, больших или равных единице, приводит к переполнению разрядной сетки. В этом случае теряются старшие разряды чисел и результаты искажаются. Числа, по абсолютной величине меньшие 0,000...01, определяются как машинный нуль. При подготовке задачи к решению на машине с фиксированной запятой необходимо учитывать возможный
2 Э. В, Сарннгулан, Г. В, Смирнова |
П7 |
диапазон изменения величин, используемых в процессе реше ния, чтобы с помощью подбора масштабов исключить как пе реполнение разрядной сетки, так и возникновение машинного нуля. Представление чисел в естественной форме используется в основном в специализированных цифровых машинах, где круг решаемых задач вполне определен.
На рис. 2.1 показано возможное распределение разрядов регистра числа в машинах с фиксированной запятой.
|
|
Sod цифровой дробной |
Знаковый разряд |
|
части числа |
|
|
j L — .. |
1 1 О |
1 |
о |
Рис :.i
Взнаковом разряде находится знак числа, при отрицатель ном значении используется код 1, при положительной величи не фиксируется код 0. В регистре (рис. 2.1) записано число —
0,101...01.
Вдругом классе цифровых машин положение запятой ука зывается для каждого числа — это машины с плавающей за пятой или с учетом порядков. Определение места запятой эк
вивалентно представлению числа N через его дробную цифро вую часть Л;лр и порядок р.
N — 2Р•Л’4', |
(2.4) |
,-де Л’’4 — О, Л/_, Л’ . . ■ • • N. да. N-i — 1; |
0. |
Дробная часть N 4' называется мантиссой числа N. Обычно мантисса Л/дрпо модулю меньше единицы (j Л/лр |< 1) и имеет свой знак, соответствующий знаку числа.
Величина порядка р, представляющая целое число, опреде ляет положение запятой в мантиссе. Группа порядка р имеет свой знак, характеризующий направление движения запятой в числе. С изменением порядка запятая как бы «плавает» в изображении числа.
На рис. 2.2 показана возможная запись числа двумя груп пами: группой мантиссы Л/Др и группой порядка р ,в разрядной сетке машины.
18