Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Программа.





Адрес Команда Действие Замечания
      /: = 2
    Я0-* КЗ Адрес максимального элемента
    К1: = Я1 + 2 Адрес о1г
    0 —> (Я1) о1г: = 0
    Сравнитьа[\] с 0 (Я0) - 0
ОООА 2Б04 Если а[ 1] > =0, переход на 4 байта  
ОООС   КО -> (Я2) Адрес 1 -го отрицательного элемента
ОООЕ   1 < К1) о1г: = 1
    К2: = Я2 + 2 Адрес N
    Я1: = Я1 — 2 Адрес /
    Я0: = Я0 + 2 Адрес 2-го элемента массива
    Сравнить(Я1) с (Я2) (/с п) < К2) - (Я1)
  ЗБ20 Если < 0, переход на 20 байт Переход на обмен значений
001А   Я1: = Я1 + 2 Адрес о1г
001С   Сравнить (Я0) с 0 (Я0) - 0
001Е 2Б0С Если > = 0, переход на С байт  
    Сравнить (Я1) сО (Я1) — 0
  4Б08 Если < > 0, переход на 8 байт  
    Я2: = Я2 - 2 Адрес к
    Я0 -> (Я2) Адрес 1 -го отрицательного элемента
    1 -> (К1) ОТЯ: = 1
002А   Я2: = Я2 + 2 Адрес п
002С   Сравнить (Я0) с (ЯЗ) (аЩ с а[тах]) (ЯЗ) - (Я0)
002Е 2Б02 Если > = 0, переход на 2 байта Если я[тах] > = а[(\
    яо-^яз Адрес максимального элемента
    Я1: = Я1 — 2 Адрес 1
    (Я1): = (К1)+ 1 /: = / + 1
    Я0: = Я0 + 2 Адрес /-го элемента

 

Адрес Команда Действие Замечания
  \ввс Переход на ~~24(16) байт На сравнение / с п
003А   К2: = К2 - 2 Адрес к
оозс   (К2) -» К2  
003Е   (К2) -> К1 У8р: = а[к]
    (КЗ) -» (К2) а[к]: = д[тах]
    К1 -> (КЗ) д[тах]: = а[к\
  0Р00 Стоп  

 

Как видно, в этом случае программа значительно сократилась.

Автор «Е97» реализовал некоторый набор полезных подпрограмм. Эти подпрог­раммы размещаются в ПЗУ, которое начинается с адреса 4000(16). Среди этих про­грамм особо стоит выделить те, которые позволяют работать с клавиатурой и дис­плеем, т.е. организовывать ввод-вывод данных.

Перечислим их:

1. Вывод целого числа (подпрограмма \Уп1е1п1е§ег). Адрес начала — 4068. В К1 — выводимое число, в КЗ — адрес области памяти, свободной от программы и дан­ных (организация буфера — для хранения промежуточных значений). Содержимое регистров КО—КЗ сохраняется.

2. Вывод строки на дисплей (подпрограмма \Уп1е81пп§). Адрес начала — 4078. В К2 — число символов в выводимой строке, в КЗ — йдрес начала строки. Содер­жимое регистров КО, К1 сохраняется, а К2, КЗ — нет.

3. Вывод символа на дисплей (подпрограмма Ои18уш). Адрес начала — 4088. В КО — выводимый символ. Содержимое КО—КЗ сохраняется.

4. Ввод символа с эхо-печатью (подпрограмма 1п8ушЕ). Адрес начала — 40РА. В КО — вводимый символ, содержимое регистров К1—КЗ сохраняется.

5. Ввод целого числа (подпрограмма 1при1_1п1е§ег). Адрес начала — 4108. В К1 — введенное число, все другие регистры сохраняются.

6. Вывод логического значения (подпрограмма \Уп1еВоо1еап). Адрес начала — 40С4. При К1 = 0 выводится РАЬ8Е, иначе — ТК11Е. В К1 — значение. КО, К1 сохраняются, а К2, КЗ — нет.

7. Вывод текста, находящегося после вызова подпрограммы (п/п \Уп1еРа$81пщ>). Адрес начала — 40БС. КО, К1 — сохраняются, а К2, КЗ — нет.

8. Вывод целого числа (второй вариант подпрограммы, описание отсутствует в авторском изложении «Е97» — п/п Ке\у\Уп1е1п1е§ег). Адрес начала — 4152. В К1 — выводимое число; КО = 0 — выравнивание выводимого числа по левому краю, во всех других случаях — по правому. Содержимое регистров КО—КЗ сохраняется.

Рассмотрим пример, где организуется ввод данных с клавиатуры и результат выводится на экран.

Пример 12. Вычислить значение выражения и= х3у— у2%+ 12хуъ организовав ввод данных с клавиатуры и вывод результатов на экран.

При решении необходимо позаботиться о распределении памяти с учетом того, что некоторые регистры, а также часть ОЗУ используется подпрограммами ввода- вывода.

План решения:

1. Ввод х, у, х. 2. Р: = х2.

3. Я: = 12г. 4. Я: = Р+ Я.

5.Я: =Ях. в.8~у1.

7. Я: = Я -5. 8. [/: =у Я.

9. Вывод а 10. Стоп.

Распределение памяти. Значения х, у, г после ввода разместим в памяти по последовательным адресам 80 — 84(16). Регистры К1, К2 будем использовать для хра­нения величин Р, Я, 5. Значение Vполучим в К1. Кроме того, некоторые регистры будут использованы стандартными подпрограммами (см. выше). Указатель стека установим для удобства на последний адрес ОЗУ — РЕ(16).

Тесты:

\) х = 1, у = 2, г = 3; и = 62; 2) х = —1, у = —2, г = ~3; и = —58.







Дата добавления: 2014-11-10; просмотров: 804. Нарушение авторских прав; Мы поможем в написании вашей работы!




Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...


Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

Схема рефлекторной дуги условного слюноотделительного рефлекса При неоднократном сочетании действия предупреждающего сигнала и безусловного пищевого раздражителя формируются...

Уравнение волны. Уравнение плоской гармонической волны. Волновое уравнение. Уравнение сферической волны Уравнением упругой волны называют функцию , которая определяет смещение любой частицы среды с координатами относительно своего положения равновесия в произвольный момент времени t...

Studopedia.info - Студопедия - 2014-2025 год . (0.008 сек.) русская версия | украинская версия