Доставка цветов в Севастополе: SevCvety.ru
Главная -> Появление первого микропроцессора

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 [94] 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

KMSi

•у подпрограмма оерйеотки лиректиеы S.

i евод адреса первой ячейки памяти в (HvL) f90b cbbifa call bd2eh

f90e do гс ; есди после адреса введен ек

; отображение содержимого ячейки памяти

f90f ?е цикл9е моу а,м

f910 ceobfb call выва

f913 cii79fa call еыес1 ; вывод

f916 2в be -

: анализ символа. евелей-10г0 после отображения

f917 свс2га call прев ; ввод однобайтного числа

f91a е8 pc ; если введен ек

f91d ca25f9 jz перз ; если введен пробел

; модификация содержимого ячейки

г91е ее xchg

f91f cee7fa call ее2еи1 ! ввод шестнадцатеричиого числа

г922 ее хаю

f923 73 моу м.е i запись числа в память

f924 в8 rc ; если после числа введен ек

? переход.на отображение содержимого следующей ячейки

f925 23 перз: inx н

f926 c30ff9 jmp и.икл9

Ввод параметра осуществляется подпрограммой ВВ2БН. Если сразу после параметра введен символ ВК, выполняется возврат из программы. Дальнейшая работа программы организована в виде цикла. На каждой итерации выводятся содержимое очередной ячейки памяти и символ «-», затем в зависимости от ответа пользователя выполняется (или не выполняется) запись нового содержимого. Для ввода ответа используются вспомогательные подпрограммы ПРВВ, с помощью которых выполняется ввод первого символа ответа, и ВВ2БН1 (дополнительная точка входа в подпрограмму ВВ2БН), которая вызывается, если первый введенный символ не является терминатором, и обеспечивает ввод нового содержимого в текущую ячейку памяти. В конце итерации значение указателя текущей ячейки инкрементируется. Возврат из программы производится в том случае, если в качестве терминатора введен символ ВК, что фиксируется, установкой в единицу флага CY после возврата из [Подпрограммы ПРВВ или ВВ2БН1.

6.6.7. ДИРЕКТИВА ОТОБРАЖЕНИЯ И МОДИФИКАЦИИ РЕГИСТРОВ

При обработке точек разрыва программы пользователя состояние регистров записывается в область сохранения, а при последующем запуске программы восстанавли-



вается. Поэтому с точки зрения пользователя модификация содержимого регистров МП является не чем иным, как модификацией содержимого соответствующих ячеек области сохранения. Если сразу после директивы X вводится символ В К, выполняется только отображение содержимого регистров: на консоль выводится строка, в которой вместе с общепринятыми мнемоническими обозначениями регистров приводится их содержимое. Если после директивы X вводится мнемоническое имя регистра, на консоль выводятся его содержимое и символ «-». Дальнейшая работа данной директивы аналогична работе директивы S (только доступ организуется не к последовательным ячейкам памяти, а к ячейкам области сохранения, соответствующим регистрам, имена которых упорядочены по алфавиту). Программы, вьшолняющие директиву, имеют вид:

KliX:

; полпрогранма обработки лиректиеы X.

; ввол СИМВ0,ча,СЛЕЛУЮ11ЕГ0 за лиректиеои LXI НуТРЕГ

CALL прве i ввод символа JC перо ? ес.чи введен вк

ну1 СхОсн ; (с)-число элементов ТАЕЛИиЫ

f поиск в таблице области сохранения (ТГЕГ) элемента. i соответствуИШЕГО введенному символу

F929 2186Г9 F92C CDC2FA F92F EAiFF9 F932 OEOC

f934 BE

циклю; сир

F935 ca42f9

пер4

! если элемент найден

F93S 23

f939 23

f93a 23

f93e OD

f93c c234f9

циклю

; если не вся трег просмотрена

f93f C366F8

; еозрат в диспетчер

j организация режима кодификации области сохранения

f регистров процессора

п.чя программ т10ль30еате.чя (оср)

г942 CB9iFA

ПЕР4г call

вывп

i вывод пробела

F945 cda5f9

цикли! call

еывр

~. еыеол элемента оср

f948 cd79fa

call

вывс1

% вывод "-"

f94b 2d

......

f94c cdc2fa

call

прев

f94f D8

; если введен вк

f950 ca66f9

пер7

; если ввелен разделитель

; модификация

элемента

f953 E5

push

F954 c5

pugh

f9g5 cbb7fa

call

ев2бн1

} ввод числа в (h.l)

f958 ci

f959 f5

push

; сохранение разд.елителя

F95A 7D

f9gb 12

stax

} запись числа Б оср



F9JC 78 F95II Ci F90E B7 F9SF FA65F9 F962 13 F9U3 7C F964 12 F965 El

F966 AF F967 E6 F968 F8 F969 C5 F96A Fl F96B D8 F96C C345F9

F96F CB8DFA F972 CB96FA

F975 AF F976 E6 F977 F8 F978 4E F979 CB69FA F97C CD79FA F97F 3D F9S0 CDA5F9 F9S3 C372F9

A>E

5 <а) - атрибут

; <С)-признак разлслителя

0F;A

ПЕР6

; если элемент однобайтный

tlOV

STAX

i запись старшего байта

ПЕРбь POP

p проверка HA

завершение просмотра ТРЕГ

ПЕР71 XRA

; если просмотр завершен

PUSH

восстановление разделителя

; если был введен вк

ИИКЛ11

5 на продолжение

? организация

режима отогажения оср

ПЕР8: CALL

коне

; вывод екуПс

ЦИКЛ12ь CALL

еыеп

i проверка HA

окончание просмотра трег

; если просмотр завершен

; (С) -- код ИМЕНИ регистра

CALL

еывс

} вывод имени регистра

CALL

EUECl

J вывод "="

CALL

вывр

ЦИКЛ12

? на продолжение

ТРЕГ:

J ТАБЛИЦА ОЕЛАСТИ СОХРАНЕНИЯ

F9S6 41ЕА00

•АуОЕАН.О

F989 42Е600

•В,ОЕ6НуО

F98C 43Е500

C,OE5H,0

F98F 44Е800

D,OE8H.O

F992 45Е700

ЕгОЕ7НуО

F995 46Е900

»F.0E9H»0

F998 48F500

HyOF5HvO

F99E 4CF400

L,0F4Hy0

Г99Е 50F900

»P,0F9H.l

F9A1 53ЕС01

SyOECH.l

F9A4 FF

OFFH f l<

ЕЫБР:

5 ПОДПРОГРАММА ВЫВОДА НА КОНСОЛЬ ЭЛЕМЕНТА ОСР. ; ПАРАМЕТР: (H.L) - АДРЕС ЭЛЕМЕНТА ТРЕГ.

fXXXKX»«KXXX«KXXXXK«XXXX«XXXXX«a«XXX»«XX«XXXX«XXX«XXXXX«

S ОПРЕДЕЛЕНИЕ АДРЕСА ОСР

F9A5 23 F9A6 5Е F9A7 ЗА0400 F9AA 57 F9AB 23 F9AC 46 F9AD 23

F9AE 1А

IHX MOV LDA HOV INX MOV INX

E>M 4

DfA H

BfM H

; (DrE) - АДРЕС DCP

! <B) - ПРИЗНАК ЭЛЕМЕНТА

} ВЫВОД СТАРШЕГО БАЙТА ЭЛЕМЕНТА LBAX D

т



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 [94] 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116



0.0177
Яндекс.Метрика