
книги из ГПНТБ / Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие
.pdfДля хранения базовых адресов в машине могут быть предусмотрены регистры или специально выделен ные для этой цели ячейки памяти. Посредством относи тельной адресации обеспечивается так называемая «пе ремещаемость» программ, т. е. возможность передвиже ния программ в памяти без проведения изменений внутри самой программы. При прямой адресации в случае перемещения в памяти программы и (или) обрабатыва емого программой массива данных требуется переписать адресные части всех команд (или почти всех команд).
Относительная адресация облегчает распределение памяти при составлении сложных программ. Если одно временно программируются части одной и той же зада чи, то не требуется предварительного разделения памяти между ними; каждый программист может распола гать свою часть программы в памяти, начиная с нулево го адреса. При компоновке частей программы достаточ но только задать соответствующие значения базовых адресов.
Относительная адресация используется при автома тическом распределении памяти в мультипрограммных режимах работы (см. гл. 11).
Возможности, предоставляемые относительной адре сацией могут быть расширены, если в системе команд машины предусмотрены определенные арифметические и логические операции над базовыми адресами. В этом случае принято использовать для наименования данного способа адресации термин «индексация»; более подроб но индексация рассматривается в гл. 5.
Косвенная адресация. Адресная часть команды ука зывает адрес ячейки памяти, в которой содержится ис полнительный адрес операнда; таким образом, косвенная адресация может быть иначе определена как «адресация адреса». По сравнению с прямой адресацией косвенная адресация требует при каждом обращении к памяти до полнительного цикла для чтения адреса операнда. Обычно для указания косвенной адресации в команде отводится специальный разряд, и цифра 0 или 1 в нем указывает, является ли адресная часть команды прямым или косвенным адресом.
В некоторых машинах используется так называемая многоступенчатая косвенная адресация. В этом случае ячейка, содержащая адрес операнда, содержит также и разряд-указатель косвенной адресации. Если этот раз-
7* |
99 |
ряд указывает на продолжение косвенной адресации, то машина последовательно выбирает из памяти адреса до тех пор, пока не будет найдена ячейка, в которой разрядуказатель определит прямую адресацию. Адрес из этой последней ячейки и является искомым исполнительным адресом операнда.
Косвенная адресация полезна особенно в больших и сложных программах. Например, несколько различных команд могут использовать один и тот же операнд, рас положение которого в памяти меняется в результате вычислений. Если адрес операнда помещается в ячейку А и все команды обращаются к данному операнду с по мощью косвенной адресации через ячейку А, то при из менениях расположения операнда достаточно поменять только содержимое ячейки А, не меняя коды команд. Косвенная адресация облегчает программирование воз врата от подпрограмм к основной программе. В малых машинах косвенная адресация часто используется вмес то индексации для организации циклов в программе.
Адресация слов переменной длины. Эффективность вычислительных систем, предназначенных для обработ ки данных (экономических, плановых и др.), повышает ся, если имеется возможность выполнять операции со словами переменной длины. В этом случае в машине должна быть предусмотрена адресация слов переменной длины. Адресация слов переменной длины требует ука зания местоположения в памяти начала слова и его дли ны. Применяют два способа указания длины слова:
1)слово включает специальный разряд или символ, указывающий конец слова;
2)длина слова указывается в команде.
Впервом методе в самом слове содержится раздели тель, определяющий границу между словами. В качестве такого разделителя может быть использован слог, со держащий специальную комбинацию разрядов, неис пользуемую для представления информации, или специ альный разряд в слоге, неиспользуемый для хранения полезной информации. Слово переменной длины при та ком способе адресации простирается от адресованного в команде крайнего слога вправо (или влево) до раздели тельного слога или слога, отмеченного единицей в раз делительном разряде. Недостатком первого способа ад ресации является плохое использование емкости памяти,
вкоторой значительное место занимают разделительные
100
слоги или разряды. Поэтому в современных вычисли тельных системах более распространен второй способ адресации, при котором длина слова указывается в самой команде. При адресации слова переменной длины в команде обычно указывается адрес крайнего левого бай та слова и число байтов в слове.
2-10. П Р Е Д С Т А В Л Е Н И Е Ч И С Л О В О Й И А Л Ф А В И Т Н О -Ц И Ф Р О В О Й И Н Ф О Р М А Ц И И
Н А П Е Р Ф О Л Е Н Т А Х И П Е Р Ф О К А Р Т А Х
Перфоленты и перфокарты используются в вычислительной тех нике в качестве носителя информации. Информация, представляе мая в двоичном алфавите, наносится на перфоленты и перфокарты путем пробивки отверстий. Наличие отверстия в определенной по зиции означает 1, отсутствие — 0.
Перфолента. В зависимости от ширины ленты на ней имеются от пяти до восьми кодовых дорожек (позиций) для записи инфор мации. Информация записывается строками, расположенными по перек ленты. В строке записывается один «слог», соответствующий
коду символа (цифры, буквы, знаки препинания и |
т. |
д.). |
1 2 |
3 |
Ц 5 6 7 8 |
Рис. 2-9. Размеры перфолент и расположение на них отверстий в со ответствии с ГОСТ 10860-68.
а _ пятидорожечная перфолента; б — семидорожечная перфолента; в — восьми дорожечная перфолента.
Современная система телеграфии, использующая пятипозици онную бумажную ленту, применяет пятизначный код. В вычисли тельной технике используют обычно пяти-, семиили восьмипозици-
101
Регистры
Латинс Цифры, кий знаки
А
В?
С1
D Кто там?
Е3
F Э
Gш
Нщ
Iв
JЮ(зв)
К(
L |
) |
М |
NДзпт)
О9
Р0
Q |
1 |
R |
4 |
S
т5
и7
V =
W2
X/
Y6
Z+
Возврат каретки Перевод строки Буквы латинские Цифры Пробел Буквы русские
Русский |
|
Кодовые дорожки |
|
|
||
1 |
2 |
3 |
4 |
5 |
||
А |
1 |
0 |
0 |
0 |
||
Б |
1 |
0 |
0 |
1 |
1 |
|
Ц |
0 |
1 |
1 |
1 |
0 |
|
д |
1 |
0 |
0 |
1 |
0 |
|
Е |
1 |
0 |
0 |
0 |
0 |
|
Ф |
1 |
0 |
1 |
1 |
0 |
|
Г |
0 |
1 |
0 |
1 |
1 |
|
X |
0 |
0 |
1 |
0 |
1 |
|
И |
0 |
1 |
1 |
0 |
0 |
|
Й |
1 |
1 |
0 |
1 |
0 |
|
к |
1 |
1 |
1 |
1 |
0 |
|
л |
||||||
0 |
1 |
0 |
0 |
1 |
||
м |
0 |
0 |
1 |
1 |
1 |
|
н |
0 |
0 |
1 |
1 |
0 |
|
о |
0 |
0 |
0 |
1 |
1 |
|
п |
0 |
1 |
1 |
0 |
1 |
|
я |
1 |
1 |
1 |
0 |
1 |
|
Р |
||||||
0 |
1 |
0 |
1 |
0 |
||
с |
1 |
0 |
1 |
0 |
0 |
|
т |
||||||
0 |
0 |
0 |
0 |
1 |
||
У |
1 |
1 |
1 |
0 |
0 |
|
ж |
0 |
1 |
1 |
1 |
1 |
|
в |
||||||
1 |
1 |
0 |
0 |
1 |
||
ыь |
1 |
0 |
1 |
1 |
1 |
|
3 |
1 |
0 |
1 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
||
< |
0 |
0 |
0 |
1 |
0 |
|
= |
0 |
1 |
0 |
0 |
0 |
|
|
1 |
1 |
1 |
11 |
11 |
|
|
01 |
01 |
01 |
0 |
0 |
|
|
0 |
0 |
0 |
0 |
0 |
Рис. 2-10. Второй международный телеграфный код.
1 — отверстие; 0 — отсутствие отверстия.
онную перфоленту. Ранее была широко распространена пятипози ционная перфолента, так как она могла применяться для передачи данных по линиям связи со стандартным телеграфным оборудова нием. В последнее время в связи с необходимостью представлять в машине большее число различных символов семи- и восьмипозици онная перфолента стала использоваться значительно чаще.
102
Для перфоленты обычно применяется высококачественная бу мага толщиной 0,1—0,15 мм, изготовленная из сульфитной целлю лозы и пропитанная раствором минерального масла. Применяется
еще и перфолента повышенной прочности, приготовленная из стекловолокпа или из пластмасс.
~ |
# _ |
Ц и ф р і/ |
|
|
t |
|
|
б у к в ы р а /т /н с н и е |
|
|
J |
1
Рис. 2-11. Пример размещения зна- |
о |
О |
• |
-ч |
ков на перфоленте во втором меж- |
п |
о |
• |
О - |
дународном телеграфном коде. |
° |
|
|
|
\
A 6 '
Ф
|
|
|
|
|
|
|
Э, |
0 |
0 0 0 |
1 |
1 |
1 |
1 |
|||
|
|
|
|
|
|
|
Эе |
0 |
0 1 1 |
0 |
0 |
1 |
1 |
|||
|
|
|
|
|
|
|
Э6 |
0 |
1 0 1 |
0 |
1 |
0 |
1 |
|||
|
|
|
э4 |
|
|
Эі |
|
0 |
1 2 3 |
4 |
5 |
6 |
7 |
|||
|
|
|
0 Эз0 0 0 |
0 0 |
10 А |
р |
F |
V |
|
|
|
|||||
|
|
|
0 0 |
0 |
1 |
1 |
1 |
t |
Б с |
G |
|
|
|
|||
|
|
|
( |
А |
|
|
||||||||||
|
|
|
0 |
0 |
1 |
0 |
2 |
2 |
В т |
JI |
С |
1 |
|
|||
|
|
|
0 0 |
1 |
1 |
3 3 |
) |
дГ |
У |
~І |
|
|||||
|
|
|
0 |
1 0 0 |
4 4 |
X |
ф |
L |
= |
0 |
|
|||||
|
|
|
0 |
1 |
0 |
1 |
5 |
5 |
=j |
Е |
X N |
± |
|
|||
|
|
|
0 1 |
1 0 6 6 |
Ж |
ц |
Q |
% |
V |
|
||||||
|
|
|
0 1 1 |
1 |
7 |
7 |
1 |
3 ч |
R |
0 |
|
|
||||
|
|
|
1 |
0 |
0 0 |
8 8 |
] |
И |
ш |
Sи |
1 |
|
|
|||
|
|
|
1 |
0 |
0 1 9 9 |
ж |
щ |
— |
|
|
|
|||||
|
|
|
1 |
1 |
0 |
10 |
|
( |
Й |
ы |
V |
|
|
|
|
|
|
|
|
0 |
+ |
К |
] |
|
|
||||||||
|
|
|
1 |
0 |
1 1 1 |
л |
ь |
W |
|
|
||||||
|
|
|
1 1 0 0 12 |
7 |
ф |
м э |
Z |
ь |
|
|
||||||
|
|
|
1 1 0 |
1 13 |
|
< |
н ю |
— |
|
|
||||||
|
|
|
1 |
1 |
1 |
0 |
14 |
* |
> |
о |
я |
< |
tо |
|
|
|
|
|
|
1 |
1 |
1 1 15 |
— |
|
п |
о |
< |
|
|
||||
Рис. 2-12, Таблица |
кодов |
на |
перфолентах |
по |
строкам, |
на |
перфокар |
|||||||||
3 |
]—Эі |
номера |
|
тах по колонкам и позициям. |
|
|
соответству |
|||||||||
|
|
дорожек; 0 соответствует отсутствию пробивки; 1 |
||||||||||||||
|
Н а |
|
|
|
|
ет наличию пробивки. |
|
и |
отверстий |
по |
||||||
|
рис. 2-9 показаны размеры |
перфоленты |
||||||||||||||
ГО С Т |
10860-68. |
|
отверстий в каждой |
строке |
пробивается |
так |
||||||||||
|
Помимо кодовых |
же круглое отверстие меньшего диаметра, используемое для созда ния синхроимпульсов и иногда для перемещения перфоленты. Это отверстие называется «ведущим» или «синхронизирующим».
103
оф» |
|
|
|
|
0 |
0 |
Латинский |
регистр |
|
|
|
|
|
Русский |
регистр |
|
|
|||
|
|
|
|
э , |
0 |
0 |
I |
1 |
1 |
1 0 |
|
0 |
|
|
||||||
|
|
|
|
|
|
|
|
0 |
0 |
1 |
1 |
1 |
1 |
|||||||
|
|
|
- |
Эе |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
|
|
|
|
0 |
1 |
0 |
|
|
||||||||||||
Э, j э в ЭБ Э 4 |
Эз |
Э 2 |
|
Э 6 |
|
|
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
Эі |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|||
0 |
0 |
0 |
0 |
0 |
ПУС |
(СС7) |
Пробел |
0 |
Р |
Р |
\ |
Р |
|
|
|
|
Ю П Ю |
П |
||
|
|
|
|
|
|
API |
|
|
|
|
||||||||||
0 |
0 |
0 |
1 |
1 1 |
j(CCl) н з |
(СУ1) |
! |
I |
А |
Q |
а |
Я |
|
|
|
|
а |
Я А |
Я |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
0 |
0 |
1 |
0 1 2 |(СС2) НТ |
(СУ2) |
1 » |
J 2 |
В |
R |
ь |
Г |
|
|
|
|
б |
р |
Б |
Р |
||
|
|
|
|
|
|
|
|
|
|
|||||||||||
0 |
0 |
1 |
1 |
3 |
(ССЗ)КТ |
(СУЗ) |
# |
3 |
С |
S |
С |
S |
|
|
|
|
д |
С Ц |
С |
|
0 |
1 |
0 |
0 |
4 |
(СС4) |
(СУ4) |
|
4 |
D |
Т |
d |
t |
|
|
|
|
д |
т |
Д |
Т |
|
|
|
|
|
КП |
СТП |
|
|
|
|
|
|
|
|
|
|
и
0 1 0 1 5 |
(СС5) |
(СС8) I |
% |
5 |
Е |
и |
е |
и |
|
НЕТ |
|
|
|
|
|
||
|
к т м |
|
|
|
|
|
|
|
I I I - |
|
1 |
|
I I I |
|
1 |
1 1 1 1 |
0 |
1 |
1 |
0 |
6 |
(СС6) |
(СС9) |
& |
6 |
F |
V |
/ |
V |
|
|
|
|
|
ДА |
СИН |
|
|
|
|
|
|
0 |
1 |
1 |
1 |
7 |
ЗВ |
(ССЮ)КБ |
/ |
7 |
G |
г |
8 |
w |
1 0 0 |
0 |
8 |
(СПО) |
АН |
( |
8 |
Н X h X |
|||||
вш |
||||||||||||
1 |
0 |
0 |
1 |
9 |
(СП1) ГТ |
КН |
) |
9 |
I |
У |
і |
У |
1 |
0 |
1 |
0 |
10 |
(СП2) |
ЗМ |
* |
: |
J |
Z |
і |
z |
|
|
|
|
|
ПС |
|
|
|
|
|
|
|
1 |
0 |
1 |
1 |
" |
(СПЗ)ВТ |
АР2 |
+ |
> |
К |
1 |
k |
|
1 |
1 |
0 |
0 |
12 |
(СП4)ПФ |
(РИ4) |
> |
< |
L |
V |
e |
|
1 |
1 |
0 |
1 |
13 j (СП5)ВК |
(РИЗ) |
— |
= |
М |
] |
m |
— |
|
1 |
1 |
1 |
0 |
14 |
Р У С |
(РИ2) |
/ |
> |
N |
А n |
||
1 |
1 |
1 |
1 |
15 |
Л А Т |
(РИ1) |
|
о |
- |
O |
ЗБ 1 1 1 1 |
|
Примечания: |
|
8/0—11/15 повторяются символы позиций |
0/0—3/15. |
|
|
|
|
|
||||
1. Н а позициях |
|
|
|
|
|
|||||||
2. Позиции 4/0 и 7/11—7/13 являются резервными. |
|
|
|
|
|
|
е У Е У
11
Фж ф ж
Г в |
г |
|
в |
|
X ь |
X |
|
ь |
|
и |
ы |
и |
|
ы |
й |
я |
й |
|
3 |
|
|
|||
к |
ш |
К |
|
ш |
л |
э |
л |
|
э |
м |
Щ |
м |
|
щ |
н |
ч |
н |
|
ч |
о |
- 1 |
0 |
, |
ЗБ |
|
Рис. 2-13. Таблица кодов по Г О С Т 13052-67.
В СССР для кодирования информации на перфоленте принято два вида кодов: второй международный телеграфный код и коды по ГОСТ 10859-64. Второй международный телеграфный код слу жит для кодирования информации на пятипозиционной перфолен те. Этот код предназначается в основном для передачи информа ции по линиям связи. Однако в некоторых вычислительных маши нах этот код используется для ввода и вывода информации.
На рис. |
‘2-10 |
показана таблица выводов второго телеграф |
ного кода. |
Этот |
код пятипозиционный и поэтому имеет толь |
ко 32 различных знака. Однако за счет введения трех регистровых признаков для трех групп символов: цифры (код 11011), буквы ла
тинские (код 11111), буквы русские (код |
00000)— кодируется 78 |
||||||
различных |
знаков. |
Например, если перед |
знаком, |
имеющим |
код |
||
11001, |
стоит регистровый признак «цифры», то |
он |
означает |
циф |
|||
ру 2, |
если |
признак |
«буквы русские» — то |
букву |
В, |
если признак |
«буквы латинские» — то букву W .
Из оставшихся свободными три комбинации используются для
служебных знаков: В озврат карет ки, П е р е в о д ст роки и П р о б е л ,
соответствующих определенным перемещениям печатающего ме ханизма.
На рис. 2-11 показана для примера набивка некоторых знаков. ГОСТ 10859-64 регламентирует кодирование информации на пяти-, шести-, семи- и восьмипозиционной перфоленте. Этот код предназначается в основном для ввода и вывода информации из вычислительных машин. Информацию, закодированную согласно ГОСТ 10859-64 на шести-, семи- и восьмипозиционной ленте, не возможно передать по линиям связи без предварительного преоб
разования.
В настоящее время действует ГОСТ 13052-67, который устанав ливает единый код для ввода информации в вычислительные машины и для аппаратуры передачи данных по линиям связи. Это позволяет вводить в ЦВМ и выводить из них информацию без предварительного ее преобразования с пунктов, удаленных на боль шое расстояние, а также упрощает обмен информацией между вы числительными системами по линиям связи.
На рис. 2-12 показана таблица кодов по ГОСТ 10859-64, а на рис. 2-13 — таблица кодов по ГОСТ 13052-67.
П ерф окарт а . Перфокарты изготовляются из специальной бума ги толщиной 0,18 мм с жестким допуском. В основном использу ются два вида перфокарт: 80-колонные и 45-колонные. Эти пер фокарты имеют одинаковые размеры: длина 187,4 мм, ширина 82,5 мм.
В45-колонной перфокарте имеется 45 колонок. В каждой ко лонке располагаются 12 позиций. В этой карте пробиваются от верстия круглой формы диаметром 3,2 мм.
В80-колонной перфокарте имеется 80 колонок. В каждой ко лонке располагаются 12 позиций. В карте пробиваются отверстия
прямоугольной формы.
В вычислительной технике в основном используются 80-колон ные перфокарты. На рис. 2-14 показана 80-колонная перфокарта.
Информацию на перфокартах располагают поколонно или попозиционно. В случае поколонного расположения на один знак от водится, как правило, вся колонка. Комбинируя пробивки в 12 по зициях одной колонки, можно записать на ней тот или иной знак. В этом случае на перфокарте располагается 80 знаков.
106
По ГОСТ 10859-64 при поколонном расположении возможно наносить информацию в десятичной или в двоичной системе счис ления. При нанесении информации в двоичной системе счисления под информационную дорожку Эі отводится двенадцатая, под Э2— одиннадцатая, под ЭЗ — нулевая, под Э4 — первая, под Э5 — вто рая, под Э6 — третья, под Э7 — четвертая позиции перфокарты1.
Кодирование информации в десятичной системе счисления в на стоящее время находит широкое применение в связи с развитием
/J S Щ
Рис. 2-15. Пример расположения некоторых знаков при ко лонном расположении информации (ГОСТ 10859-64).
1 Информационные дорожки Э1-Э7 соответствуют таблице на рис. 2-12.
107
Рис. 2-16. Кодирование алфавитно-цифровой информации на 80-колопиой перфокарте.

систем автоматической обработки данных, используемых для эко номических, плановых расчетов, учета и других задач. К тому же в этой системе счисления работают все счетно-перфорационные ма шины, на которых часто производится подготовка исходной инфор мации. На рис. 2-15 для примера показано расположение некоторых знаков на перфокарте в двоичной системе счисления при поколон-
|
|
|
|
|
|
I |
|
H |
8 |
1 г 8 4 s s ? 8stetm fj |
|
78 7/7373 747ff7ff77 737888 |
|||||
Ш. |
|
|
e |
|
8 |
|
|
|
i |
I |
i |
|
f |
|
|
|
|
|
|
|
г |
|
2 |
|
|
|
|
3 |
|
3 |
|
3 |
|
|
|
|
4 |
|
4 |
|
4 |
|
|
|
|
ff |
|
ff |
|
ff |
|
|
|
|
ff |
|
ff |
|
ff |
|
|
|
|
7 |
|
|
|
7 |
|
|
|
|
8 |
f ff |
|
8 |
|
|
|
|
|
*71 s |
|
ff |
I |
I I |
M f |
||
|
7/88088U 0 8 3 |
7/08888008ß\ |
7/088880 083 |
|
||||
|
nepffi/TC 8 8 8 - |
ffm oßi/JC ооаЛ |
0888/ПІ/Х 8 8 0 - |
|
||||
|
8 8 ff ff o m p o - |
8 8 f f f f om po- |
1 |
80f f ff C/npo- |
|
|||
|
a a x |
/ fa x |
1 |
|
a a x |
|
|
|
Рис. 2-17. Пример позиционного расположения информации. |
||||||||
ном расположении |
информации, а |
на рис. |
2-16 — кодирование ал |
фавитно-цифровой информации в десятичной системе счисления (согласно ГОСТ 10859-64).
При позиционном расположении информации на один знак выделяется от трех до восьми колонок одной позиции (строки) в за висимости от того, какая информация вводится в машину — вось меричная, двоично-десятичная или алфавитно-цифровая. Различные комбинации пробивок в выделенных для одного знака колонках дают возможность записать на них различные знаки. При этом способе расположения информации значительно увеличивается плот ность размещения ее на перфокарте.
На рис. 2-12 показана таблица попозиционного кодирования информации на перфокартах согласно ГОСТ 10859-64, а на рис. 2-17 для примера показано кодирование некоторых знаков при попозиционном расположении информации.
Несмотря на большую плотность информации при гюпозиционном расположении все же поколонное расположение информа ции в десятичной системе счисления продолжает использоваться. Такое расположение информации позволяет легко связать электрон ные цифровые вычислительные машины и счетно-перфорационные машины, которые работают только с поколонным расположением информации.
Представление информации на магнитных лентах и дисках рас сматривается в гл. 6.
109