48632

Складывать содержимое последовательных ячеек памяти до появления признака переноса CY

Курсовая

Информатика, кибернетика и программирование

В данной работе используется цикл с постусловием. 4 ОТЛАДКА И ВЕРИФИКАЦИЯ ПРОГРАММЫ Заданные числа были равны 8050 в 16й системе счисления Записаны в ячейки памяти 6000h6004h. В таблице 2 приведен пример корректной работы программы. Таблица 2 Регистры H 50 50 50 0 50 F0 50 40 Начальное и итоговое состояния программы показаны на рисунках 2 и 6.

Русский

2013-12-22

242 KB

7 чел.

1 ПОСТАНОВКА ЗАДАЧИ

Задача: Складывать содержимое последовательных ячеек памяти до появления признака переноса CY. Адрес первой ячейки 6000Н. Этапы решения задачи:

1. Разработать блок-схему алгоритма решения задачи по заданному варианту

2. Написать программу на языке ассемблера.

3. Ассемблировать программу вручную.

4. Занести программу в память микроЭВМ.

5. Выполнить программу в автоматическом режиме.

6. Если программа не работает, то используя пошаговый режим отладить программу.

2 АНАЛИЗ ЗАДАЧИ И РАЗРАБОТКА АЛГОРИТМА РЕШЕНИЯ ЗАДАЧИ

Поскольку для представления данных используется шестнадцатеричная система счисления, начальные данные необходимо перевести в эту систему счисления.

Обнуляем аккумулятор и принудительно устанавливаем признак переноса  С=0. Вводим данные в ячейки 6000h-6004h ( (H,L)←6000h ). Передаем содержимое аккумулятора и регистра (H) в аккумулятор – А ( (А)←(А)+((H,L)) ).

Увеличиваем содержимое регистровой пары на 1 ( (HL) ←(HL)+1 ). Далее используем  команду – Переход к метке по условию. В данном случае условием будет являться С=0 – Отсутствие переноса, NC (NO Carry). При истинности этого условия программа переходит к метке ( (А)←(А)+((H,L)) ). Если же условие становиться ложным: С=1- Перенос, заканчиваем программу (HLT).

 

3 РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ И ЕЁ АССЕМБЛИРОВАНИЕ

В данной работе используется цикл с постусловием.

Рисунок 1 Блок-схема алгоритма

Таблица 1

Мнемоника

Код

Описание

MVI A

3A

Передаем в аккумулятор ноль.

STC

37

Устанавливаем признак переноса С=1.

CMC

3F

Инвертируем признак переноса^ С=0.

LXI H

21

В регистрах HL первый адрес.

ADD M

86

Сложить А с регистром M.

INX H

23

Увеличиваем содержимое регистровой пары на 1.

JNC

D2

Повторить.

HLT

76

Конец.

4 ОТЛАДКА И ВЕРИФИКАЦИЯ ПРОГРАММЫ

Заданные числа были равны «80(50 в 16й системе счисления)» (Записаны в ячейки памяти 6000h-6004h). После прибавления значения ячейки 6004h программа должна прекратить работу из за появления признака переноса С=1(Перенос возникает, когда число в аккумуляторе превышает значение 255). В таблице 2 приведен пример корректной работы программы.

Таблица 2

Регистры

H

A

50

50

50

A0

50

F0

50

40

 

Начальное и итоговое состояния программы показаны на рисунках 2 и 6. Как видно из рисунка 2, в начальный момент времени ячейки памяти с адресами 6000h-6004h имеют значение 50; Аккумулятор имеет значение 0 (AF=0); Признак переноса С=0.

Рисунок 2 Окно программы на первом шаге

    На следующем шаге, как видно на рисунке 3, содержимое ячейки памяти 6000 передалось в аккумулятор (А = 50).

Рисунок 3 Окно программы на втором шаге

     На третьем шаге программы  увеличиваем значение HL на 1.

Рисунок 4 Окно программы на третьем шаге

  На следующем  шаге, после проверки условия (С=0) мы переходим к адресу 5007 и далее в аккумулятор заносится сумма первой и второй ячеек (6000h и 6001h). AF=A0 (160 в 10й системе счисления).

Рисунок 4 Окно программы на четвертом шаге

           На следующем шаге программы  увеличиваем значение HL на 1.

Рисунок 5 Окно программы на пятом шаге

На следующем шаге работы программы (рисунок 6), после проверки условия (С=0) мы переходим к адресу 5007 и далее в аккумулятор заносится сумма первой и второй и третей ячеек (6000h, 6001h, 6002h). AF=F0 (240 в 10й системе счисления).

Рисунок 6 Окно программы на последнем шаге

На следующем шаге программы  увеличиваем значение HL на 1.

Рисунок 7 Окно программы на следующем шаге

На следующем шаге работы программы (рисунок 8), после проверки условия (С=0) мы снова переходим к адресу 5007 и далее в аккумулятор к сумме первых трех ячеек добавляется четвертая (6000h, 6001h, 6002h, 6003h). Теперь сумма в аккумуляторе превышает значение 255 и в программе появляется флаг переноса С=1.

Рисунок 8 Окно программы на следующем шаге

На последнем шаге работы программы условие отсутствия переноса (С=0) становиться ложно и программа завершается (HLT).

Рисунок 9 кно программы на следующем шаге

Таким образом теоретические значения совпали со значениями выданными программой Ассемблер в пошаговом режиме, что указывает на корректную работоспособность программы.

PAGE  13


(A)
 (A)+((HL))

H,L)6000h

A=0

C=1

C=0

Начало

Конец

C=1

(HL) (HL)+1


 

А также другие работы, которые могут Вас заинтересовать

58072. музичний образ поліфонія фуга; зосередити увагу учнів на особливостях будови й розвитку поліфонічног. 39 KB
  Мета: розширити та поглибити знання учнів про творчість Й.С.Баха; закріпити визначення термінів і понять: «музичний образ», «поліфонія», «фуга»; зосередити увагу учнів на особливостях будови й розвитку поліфонічного твору; надати уявлення про інструмент-оркестр – орган...
58073. Музика і мистецтво слова. Байки, зміст яких пов’язаний із музикою 112 KB
  МЕТА: на новому літературному (байки І. Крилова) і музичному (Квартет № 2 О. Бородіна) матеріалі довести нерозривний звязок літератури та музики на підставі: розвитку навичок аналізу, спостереження, узагальнення; розуміння ролі засобів художньої виразності у створенні художнього образу...
58074. Звук и буква «С» в словах. Использование интерактивных методов в логопедическом сопровождении 57.5 KB
  Развивать фонематический слух и фонематическое восприятие; уточнить артикуляцию звука с; уметь соотносить его с буквой; обогащать и активизировать словарный запас, совершенствовать звуковой анализ слов.
58075. Засоби виразності декоративного мистецтва: символи, знаки в орнаментах; декоративна форма (стилізація, колір і символ), символіка «Дерево життя» в декоративно-ужитковому мистецтві 52 KB
  Мета: ознайомити учнів із символами в орнаментах, з процесом узагальнення форми; розвивати прийоми роботи з ножицями; розвивати вміння аналізувати, порівнювати, узагальнювати; розвивати творчу уяву, спостережливість, акуратність, стимулювати інтерес учнів до творчої діяльності в умовах практичної роботи...
58076. Природні форми. Створення творчої композиції «Як не любити зими сніжно-синьої» 812 KB
  Мета: характеризувати кольорове розмаїття навколишнього середовища кольорову гаму зими колорит художніх творів; навчити через певну кольорову гаму передавати настрій пейзажу; вдосконалювати технічні прийоми зображення гуашевими фарбами прийоми підбору...
58077. Харчування підлітків 57.5 KB
  МЕТА: сформувати в учнів уявлення про вікові вимоги до харчування калорійність харчування; встановити основні критерії раціонального харчування; навчити розпізнавати ознаки порушення питного режиму...
58078. Використання ІКТ на уроках як засіб підвищення якості навчальних досягнень учнів 220 KB
  Успішність розв’язання цього завдання значною мірою залежить від мети використання комп’ютера в навчальному процесі якості й можливостей програмного забезпечення та від того яке місце посяде комп’ютер в системі дидактичних засобів.
58079. Свято- захист проекту “Людина без книги, як криниця без води” 133.5 KB
  Мета: ознайомити учнів із тим, як книжка прийшла до людей; розкрити значення книги в житті людини; викликати інтерес до читання; розвивати творчі здібності, артистизм, зв’язне мовлення; активно залучати до творчого процесу батьків; виховувати любов до книжки, дбайливе ставлення до неї.
58080. Створення композицій з природних матеріалів. Флористика. Натюрморт 45.5 KB
  Мета уроку: навчити створювати рельєфні твори з природного матеріалу за законами композиції; готувати природний матеріал для створення флористики; розрізняти флористику та ікебану; розрізняти фактуру матеріалів для флористики та порівнювати їх форми і характерні риси...