Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие

.pdf
Скачиваний:
98
Добавлен:
27.10.2023
Размер:
29.24 Mб
Скачать

Для хранения базовых адресов в машине могут быть предусмотрены регистры или специально выделен­ ные для этой цели ячейки памяти. Посредством относи­ тельной адресации обеспечивается так называемая «пе­ ремещаемость» программ, т. е. возможность передвиже­ ния программ в памяти без проведения изменений внутри самой программы. При прямой адресации в случае перемещения в памяти программы и (или) обрабатыва­ емого программой массива данных требуется переписать адресные части всех команд (или почти всех команд).

Относительная адресация облегчает распределение памяти при составлении сложных программ. Если одно­ временно программируются части одной и той же зада­ чи, то не требуется предварительного разделения памяти между ними; каждый программист может распола­ гать свою часть программы в памяти, начиная с нулево­ го адреса. При компоновке частей программы достаточ­ но только задать соответствующие значения базовых адресов.

Относительная адресация используется при автома­ тическом распределении памяти в мультипрограммных режимах работы (см. гл. 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

Соседние файлы в папке книги из ГПНТБ