книги из ГПНТБ / Бирюков Н.Е. Основы электронной вычислительной техники
.pdfI этап. Выполнение отдельной вычислительной операции начи нается с поступления команды из ЗУ по каналу связи 1 в управ ляющее устройство. В управляющем устройстве команда деши фруется (расшифровывается), в результате чего из УУ в различ ные узлы машины поступают соответствующие инструкции (сиг налы). Например, по каналу 2 в запоминающее устройство посту пает команда передать числа, находящиеся по адресу /1, и Л2, че рез канал 4 в арифметическое устройство. Одновременно из устройства управления по каналу 3 дается команда в арифметиче ское устройство (АУ) произвести с числами А\ и Л2 соответствую щую арифметическую операцию.
П этап. АУ выполняет требуемую арифметическую операцию. Этот этап занимает 50 - 7 0 всего рабочего такта машины.
Ill этап. Результат вычислений поступает из арифметического устройства по каналу 5 в ячейку Ал запоминающего устройства.
По окончании каждого отдельного такта вычислений произво дится подача следующей команды из ЗУ в УУ, и процесс вычисле ний повторяется.
10
Г Л А В А 2
АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЭЛЕКТРОННЫХ ЦИФРОВЫХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН
§ I. СИСТЕМЫ СЧИСЛЕНИЯ
Системой счисления называется совокупность названий и зна ков, позволяющих выразить устно ^или письменно любое число. В настоящее время широко применяются десятичная и римская системы счисления; первая из них является позиционной, вторая — непозиционная.
Система счисления называется позиционной, если значение каждой входящей в запись числа цифры зависит от ее положения (позиции) в ряду цифр, изображающих число. Например, в числе 555 первая слева пятерка означает количество сотен, содержа щихся в числе, вторая — количество десятков и третья —■количе ство единиц.
Непозиционной называется такая система счисления, в которой значение цифры не зависит от ее положения в ряду цифр. Напри мер, в римской системе счисления в числе XXX цифра X в любом месте записи означает число X.
Вцифровых вычислительных машинах используется только по зиционная система счисления.
Внастоящее время общепринятой является десятичная система счисления. Названа она так потому, что для записи чисел в ней используется десять различных цифр; 0, 1,2, 3, 4, 5, 6, 7, 8, 9. Число десять является основанием системы и изображается двумя циф рами в виде 10. Основанием системы называется число, определяю щее количество цифр в применяемой системе. Название позицион ной системы определяет ее основание.
Всякое число в позиционной системе записывается в виде по следовательности цифр, разделенных запятой на целую и дробную части. Возьмем, например, число двести тридцать пять и шесть десятых и раскроем его значение:
235,6 = 2- 102+ 3- 104-5 - 10°+ 6 - 10 1.
Итак, всякое десятичное число представляет собой сумму раз личных степеней десяти с соответствующими коэффициентами. Эти
11
коэффициенты обычно и изображают число 235,6 в виде сокращен ной записи.
Существуют также другие позиционные системы счисления. Принимая за основание системы различные числа: два, три, пять, восемь, двенадцать, шестьдесят и т. д., можно получить соответ ственно двоичную, троичную, пятеричную, восьмеричную и другие системы счисления. При этом в любой из них число будет пред ставлять собой сумму степеней основания системы с соответствую щими коэффициентами.
= |
п |
<7"= |
л'я-i q "-1-f- • • • |
|
|
|
|
|
|
|
|
|
|
. . . K.,q2 |
|
K^q'-'-K^q" |
К - ^ ~ х |
■ • - К-пС! |
", (1) |
|
где N q — число в q-й системе счисления; |
|
|
|
|||
q — основание системы; |
|
|
|
|
||
/;. — номер разряда. |
Nq будет иметь вид |
|
|
|||
В сокращенной записи число |
|
|
||||
N q = Kn Ka- i . ■ . К хК ,К - х . . ■ |
|
|
||||
Кроме десятичной системы счисления в |
ЭЦВМ |
применяются |
||||
восьмеричная п двоичная системы. |
записи |
чисел |
исполь |
|||
В восьмеричной системе счисления для |
зуются восемь цифр: 0, 1, 2, 3, 4, 5, 6, 7. Основанием этой системы является число восемь, которое в восьмеричной системе записы
вается двумя цифрами в виде 10. |
|
число семьдесят |
||
Запишем в восьмеричной системе счисления |
||||
три в соответствии с выражением (1): |
|
|
|
|
73= 1• 82+ 1■81—f-1• 8°. |
|
|
|
|
В восьмеричной системе сокращенная |
запись |
числа |
73 равна |
|
1 1 : 1 |
|
|
|
|
73(Ю) = 111(8). |
|
|
|
|
Минимальное количество цифр, которое |
может |
быть |
принято |
|
в системе счисления, равно двум. |
|
|
цифры: 0 и 1. |
|
Двоичная система счисления имеет только две |
Основанием системы является цифра 2, которая в двоичной си стеме тоже записывается как 10.
Двоичное число представляет собой сумму: |
|
|
||||
N.z = Kn 2" - /Д |
: 2" : |
. . |
. у К. 2: I А„2° ; Л’ 12 ; : |
|||
/ |
-К-. . . Т Д_„ 2 ". |
|
|
|||
В этой формуле |
К могут принимать только |
два |
значения — 0 |
|||
или 1. Запишем число 73 в двоичной системе счисления: |
||||||
73(ш) = 1,2й + 0.2®+ |
0.24+ |
1.2;i + |
0.22 |
0.2J + |
1.2". |
|
1 |
0 |
0 |
1 |
6 |
6 |
1 |
12
Таким образом,
73(ю) = 1001001(2).
Отличительная особенность записи чисел в двоичной системе счисления та, что запись числа длинная, но знаков в ней мало, всего 0 и 1. В табл. 1 приводятся записи чисел от 0 до 10 в различ ных системах счисления.
Таблица 1
Десятичная |
: 0 1 |
; |
2 |
о |
4 |
5 |
б |
7 |
8 |
9 |
10 |
|
О |
||||||||||||
Восьмеричная |
0 |
1 |
|
2 |
3 |
4 |
5 |
6 |
/ |
10 |
11 |
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Двоичная |
1 ° |
1 |
! |
10 |
11 |
100 |
101 |
ПО |
111 |
1000 |
1001 |
1010 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Чтобы перевести |
целое |
число из |
одной |
позиционной системы |
в другую, его нужно последовательно делить на основание той си стемы, в которую оно переводится, до тех пор, пока не получится частное меньше основания q. Число в новой системе запишется из остатков деления, начиная с последнего. Последнее частное дает старший разряд числа. Для примера переведем число 43 в двоич ную систему.
43 |
|
2 |
|
|
|
|
|
|
42 |
' |
21 |
2 |
|
2 |
|
|
|
1 |
|
20 |
10 |
1 |
2 |
|
|
|
|
|
1 |
ю |
|
О |
9 |
|
|
|
|
|
|
ч |
||||
|
|
|
0 |
|
4 |
|
i |
|
|
|
|
|
|
Г 2 |
|
||
|
|
|
|
|
|
0 |
|
|
последнее частное (1) — старший разряд числа. Итак, 43 в деся тичной системе равно 101011, в двоичной, т. е. 43(ю>= 10101 Да).
§ 5. АРИФМЕТИКА ДВОИЧНЫХ ЧИСЕЛ
Преимущество двоичной системы по сравнению с другими си стемами счисления состоит в том, что в ней арифметические дей ствия наиболее просты.
Сложение двоичных чисел. Таблица сложения выглядит сле дующим образом:
0 + |
0 = |
0 |
0+ |
1= |
1 |
1+ 0= |
1 |
1+ 1= 10
Пользуясь данной таблицей, можно выполнить сложение двоич
ных чисел:
1101(13)
1111(15)
11100(28)
13
При сложении необходимо помнить, что 1+ 1 дают нуль в данном разряде и единицу переноса в следующий разряд.
Вычитание двоичных чисел. Таблица вычитания выглядит сле дующим образом:
0 - 0 = 0
1-..0=1
1- |
1=0 |
10 |
1= 1 |
Пользуясь данной таблицей, можно выполнить вычитание двоич ных чисел. Определим разность двух чисел:
11100(28)
1101(13)
1111(15)
При вычитании необходимо помнить, что занятая в ближайшем старшем разряде единица дает две единицы младшего разряда и единицу промежуточного разряда.
Умножение двоичных чисел. Таблица умножения выглядит сле дующим образом:
0X0 |
= 0 |
0X1=0 |
|
1X0 |
= 0 |
1X1 |
= 1 |
Умножаются двоичные числа по тем же правилам, что п десятич ные. Умножение двоичных чисел можно производить, сдвигая мно жимое как влево, так и вправо:
1011 |
1011 |
1010 |
1010 |
1011 |
1011 |
1011 |
1011 |
1101110 |
1101110 |
Легко заметить, что частные произведения представляют собой сдвинутое на определенное количество разрядов множимое. Таким образом, действие умножения сводится в большинстве ЭЦВМ к сдвигу и сложению.
Деление двоичных чисел. При деленн и двоичных чисел используются двоичные таблицы умножения и вычитания.
11011100(220)! |
1010 |
(10) |
1010 |
ЮНО |
|
1111 |
|
|
1010
Тою
1010
dodo'
14
Делятся двоичные числа по тем же правилам, что и десятичные. Из приведенных примеров можно сделать вывод, что .ариф
метические действия в десятичной и двоичной системах одинаковы, только в двоичной системе счисления более громоздкая запись чи сел и действии, зато проще арифметические операции.
§(>. СИСТЕМЫ СЧИСЛЕНИЯ. ПРИМЕНЯЕМЫЕ В ЭЦВМ
Вэлектронных цифровых вычислительных машинах элемен тами, при помощи которых изображаются цифры, служат полупро водниковые приборы, . ферромагнитные материалы, электронные лампы, конденсаторы, реле и т. д. Эти элементы могут находиться только в одном из двух резко выраженных устойчивых состояний.
Электронная лампа может быть отперта или заперта, конден сатор— заряжен или разряжен, ферромагнитный сердечник — на магничен или размагничен, реле ■■включено или выключено пт.д.
Элементы, которые могут находиться в одном из двух устойчи вых состояний, называются двухпозиционными.
Двухпозициопные элементы работают по наиболее простому и падежному принципу действия — «да» или «нет» (включено или выключено). С их помощью очень легко изображать разряды двоичного числа. Одно из устойчивых состояний элемента прини мается за изображение цифры 0, а другое — за изображение циф ры 1. При использовании двоичной) системы счисления, для изобра жения цифр применяются наиболее простые элементы.
Двоичная система счисления обладает большими достоинства ми и при выполнении арифметических действий, что дает возмож ность упростить конструкции вычислительных устройств. Двоич ная система является в настоящее время основной) системой счис ления, применяемой в электронных цифровых вычислительных ма шинах. Весь вычислительный процесс осуществляется в ЭЦВМ в двоичной системе счисления.
Однако использование двоичной системы связано с некоторыми неудобствами, так как числа, представляющие исходные данные, необходимо переводить из десятичной системы в двоичную и обрат но (когда получают из машины результаты решения задачи).
Основная трудность применения десятичной системы в том, что для изображения десяти цифр требуется десять устойчивых состоя ний какой-либо физической системы. Выполнить арифметические действия в десятичной системе физическими элементами значи тельно труднее, чем в двоичной.
Чтобы сохранить преимущества двоичной системы и удобство десятичной, в ЭЦВМ в большинстве случаев используют двоично десятичный или двоично-восьмеричный код. Некоторые машины работают в этих кодах, некоторые используют их лишь при вводе исходных данных, переводя затем эти коды в двоичную систему.
В |
двоично-десятичной системе каждая цифра десятичного |
числа |
записывается ее двоичным эквивалентом. Из табл. 1 видно, |
15
что для такой записи потребуется не более четырех двоичных раз рядов.
Четырехразрядное двоичное число, изображающее десятичную цифру, называется тетродой.
Число 2568,39 запишется в двоично-десятичной системе счисле ния в следующем виде:
2 |
5 |
6 |
8, |
3 |
9 |
0010 |
0101 |
ОНО |
1000, |
ООП |
1001. |
Таким образом, десятичное число 2568,39 равно двоично-десятич ному числу 0010010101101000,00111001.
Наиболее часто в ЭЦВМ применяется двоично-восьмеричная система, в которой цифры восьмеричной системы заменяются тре мя разрядами двоичного эквивалента. Число 2567,34.»запмшется в двоично-восьмеричной системе счисления в виде
2 |
5 |
6 |
7. |
3 |
4 |
010 |
101 |
ПО |
111, |
011 |
100. |
Следовательно, двоично-восьмеричная система счисления является менее громоздкой, чем двоично-десятичная.
Перевод чисел из десятичной системы счисления в двоично десятичную и из восьмеричной в двоично-восьмеричную не связан
свычислениями и может производиться механически.
Вэлектронных цифровых вычислительных машинах количество разрядов, представляющих число, определяется, с одной стороны,
необходимой точностью вычислений, с другой,— габаритами ЭЦВМ.
§7. ФОРМЫ ПРЕДСТАВЛЕНИЯ ЧИСЕЛ В ЭЦВМ
Вцифровых вычислительных машинах в зависимости от их конструкции применяются две формы представления (записи) чисел:
— естественная, или с фиксированной запятой;
— нормальная, или с плавающей запятой.
Всоответствии с этим машины называются машинами с фик сированной или машинами с плавающей запятой.
Рассмотрим отдельно каждую из этих форм записи.
Запись с фиксированной запятой. При таком виде записи запя тая всегда ставится в одном и том же месте для всех чисел с це лой и дробной частью, с которыми работает машина. При кон струировании машины заранее устанавливают определенное коли чество разрядов отдельно для целой и дробной части числа.
Допустим, ЭЦВМ рассчитана на представление шестиразряд ного десятичного числа, причем три разряда отводится на целую
16
часть к три — на дробную. В этом случае в машине могут быть представлены числа в следующем диапазоне:
+999,999
+000,001
000,000
—000,001
—999,999
На основании анализа этих чисел нетрудно установить, что диа пазон представления чисел у машин сравнительно невелик (в на шем примере от —999,999 до +999,999). Всякое число, которое по абсолютной величине меньше минимального, записывается в виде нуля. Число, полученное в результате вычисления, не должно пре вышать по абсолютной величине максимального числа, иначе стар шие разряды числа будут потеряны.
Потеря старших разрядов называется переполнением разряд ной сетки. Чтобы избежать переполнения разрядной сетки, исход ные данные нужно предварительно перемножить на соответствую щие масштабные коэффициенты.
Обычно в ЭЦВМ с фиксированной запятой, запятая фикси руется перед первым, старшим цифровым разрядом, который ра вен нулю, т. е. числа, с которыми оперирует машина, по модулю меньше единицы. Такая фиксация запятой несколько облегчает подбор масштабных коэффициентов.
Запись с плавающей запятой. При таком виде записи любое число изображается в виде двух групп цифр — мантиссы и поряд ка — по формуле
N — m-qP,
где т — дробная часть числа, называемая мантиссой;
р— целое положительное или отрицательное число, называе мое порядком;
q — основание системы счисления.
Число считается |
представленным в нормальной |
форме, если |
первый множитель |
т является правильной дробью, |
т. е. выпол |
няется условие / т / < |
1. |
|
Число 325,786 для представления в нормальной форме необхо димо записать следующим образом:
325,786 = 0,325786103.
Если в цифровой машине для изображения мантиссы отведено шесть цифровых разрядов, а для изображения порядка — два раз ряда, то в нормальной форме 325,786 будет записано так:
+ 325786 + 03.
2—Зак. 1246 |
17 |
Порядок числа может быть не только положительным, но н от рицательным. Так, число 0,000325786 можно представить как О1,32578610~3. Запись числа в нормальной форме будет иметь вид
+325786—03.
Порядок числа показывает положение запятой, если число изо бражать набором цифр мантиссы.
Все сказанное выше в полной мере можно отнести и к пред ставлению чисел в любой системе счисления. Двоичное число 1011,01 можно представить следующим образом:
1011,0 1 = 0,101101 • 101"".
(Здесь 10 — основание системы 2, а 100 — показатель степени 4), Это число в нормальной форме запишется так:
+ 101101 + 100.
При выполнении в машине арифметических действий над чис лами, записанными с плавающей запятой, эти числа должны быть
нормализованы. |
называется |
такое преобразование |
числа, при |
|
Нормализацией |
||||
котором первая левая цифра |
мантиссы |
отличается от |
нуля, т. е. |
|
в двоичной системе |
равна 1. Устранение |
переполнения разрядной |
сетки, а также нормализация в ЭЦВМ с плавающей запятой осу ществляется автоматически. Одновременно при этом автоматически меняется и порядок.
Достоинство машин с плавающей запятой в том, что они обес печивают достаточно широкий диапазон представления чисел, не
используя |
при этом масштабные коэффициенты. |
Недостаток — |
в необходимости увеличения количества элементов, |
представляю |
|
щих число, |
так как кроме элементов, которые нужны для пред |
|
ставления мантиссы, требуются еще элементы для |
представления |
|
порядка. |
|
|
Сравнивая обе формы представления чисел в машине, можно прийти к выводу, что для универсальных ЭЦВМ, которые пред назначаются для решения с большой точностью сложных задач, более удобной является форма представления чисел с плавающей запятой.
Для специализированных машин, которые решают однотип ные задачи и для которых порядок величин и точность вычислений обычно устанавливаются заранее, более удобной является форма представления чисел с фиксированной запятой.
В настоящее время в универсальных ЭЦВМ могут применяться обе формы представления чисел, но используется обычно та из них, которая более рациональна для данной задачи.
При вычислениях приходится оперировать и с положи тельными и с отрицательными двоичными числами. Так как записи их долж ны различаться, то для изображения знаков чисел вводятся спе циальные обозначения: положительный знак изображается нулем,
18
отрицательный — единицей. Для изображения знаков чисел отвбдится специальный двоичный знаковый разряд, который распола гается перед разрядами самого числа. Например, двоичные числа Д-0,010101 и —0,010101 в естественной форме записываются так:
0,010101 и 1,010101.
В машинах с плавающей запятой для изображения знаков от водятся два разряда: один для знака мантиссы, другой — для знака порядка. Допустим, в машине отведено шесть разрядов для представления мантиссы и три разряда для представления поряд ка. Тогда двоичное число +0,0010101 = +0,10101 • 10~10 запишется следующим образом:
мантисса |
порядок |
|
0,10101 |
|
п о |
Устройство, предназначенное для хранения |
одного числа в за |
|
поминающем устройстве, называется ячейкой памяти. |
||
Ячейка памяти — это устройство, состоящее |
из двухпозицион |
ных элементов, количество которых определяется необходимым ко личеством разрядов числа. Таким образом, количество разрядов, которое может храниться в ячейке, зависит от назначения и кон струкции машины. Ячейки универсальных цифровых машин имеют до 40 двоичных разрядов. Ячейка памяти машины с фиксирован ной запятой имеет знаковый разряд и цифровые разряды. В боль шинстве машин с фиксированной запятой запятая фиксируется перед первым цифровым разрядом ячейки сразу после знакового. Схема такой ячейки с записью числа —0,1011 . . . . 1011 изобра жена на рис. 2.
Знаковый
Рис. 2 |
Рис. 3 |
Ячейка памяти машины с плавающей запятой состоит из двух частей: одной — для записи мантиссы, другой — для записи поряд ка. Схема такой ячейки с записью числа —0,101 . . . 1 • Ю-100101 показана на рис. 3. Эта ячейка имеет знаковый разряд и цифровые разряды мантиссы, а также знаковый разряд и цифровые разряды
порядка. В действительности в универсальных ЭЦВМ с плаваю щей запятой для изображения мантиссы отводится 30—36 разря дов, а для изображения порядка — 6—7 разрядов.
19