49150

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

Курсовая

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

Трансляция программы в исполняемый машинный код производится ассемблером от англ. Обеспечение максимального использования специфических возможностей конкретной платформы что также позволяет создавать более эффективные программы с меньшими затратами ресурсов. 3 РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ Для реализации поставленной задачи необходимо загрузить в аккумулятор значение ячейки памяти по адресу 6000Н затем непосредственно в аккумуляторе выполнять требуемые операции. Кодирование 5 ОТЛАДКА И ВЕРИФИКАЦИЯ ПРОГРАММЫ Начальное и итоговое состояния...

Русский

2013-12-21

153 KB

11 чел.

ОГЛАВЛЕНИЕ

[0.0.1] Достоинства


ВВЕДЕНИЕ

Язы́к ассе́мблера — язык программирования низкого уровня, мнемонические команды которого (за редким исключением) соответствуют инструкциям процессора вычислительной системы. Трансляция программы в исполняемый машинный код производится ассемблером (от англ. assembler - сборщик) - программой-транслятором, которая и дала языку ассемблера его название.

Достоинства

  •  При достаточной квалификации программиста, язык ассемблера позволяет писать самый быстрый и компактный код. Возможно, даже лучше, чем генерируемый трансляторами языков более высокого уровня.
  •  Обеспечение максимального использования специфических возможностей конкретной платформы, что также позволяет создавать более эффективные программы с меньшими затратами ресурсов.
  •  При программировании на языке ассемблера возможен непосредственный доступ к аппаратуре, в том числе портам ввода-вывода, регистрам процессора и др.

Недостатки

  •  В силу машинной ориентации («низкого» уровня) языка ассемблера человеку сложнее читать и понимать программу на нём по сравнению с языками программирования высокого уровня; программа состоит из слишком «мелких» элементов — машинных команд, соответственно, усложняются программирование и отладка, растёт трудоёмкость, велика вероятность внесения ошибок.
  •  Требуется высокая квалификация программиста. Код на ассемблере выполняется быстрее, но написанный неопытным программистом, обычно оказывается хуже сгенерированного компилятором

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

Задача: Сдвинуть содержимое ячейки памяти 6000Н вправо на три позиции, сохранив знаковый разряд.

Этапы решения задачи:

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

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

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

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

5. Выполнить программу.

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

Память микропроцессора K580 представляет собой совокупность  ячеек из 8 бит, т.е. 1 байт. Старший бит ячейки совпадает с признаком знака. Для того, чтобы сохранить знаковый разряд, необходимо произвести циклический сдвиг на один разряд влево. Нулевой разряд и признак С приобретают значение старшего  7 – го разряда ячейки, которое оно имело до сдвига. Теперь мы имеем в регистре F знаковый разряд ячейки, подлежащей сдвигу. Далее нам необходимо произвести перенос вправо на 4 позиции вправо, т.к. мы до этого совершили сдвиг влево, а по условию задачи, нам необходимо произвести сдвиг вправо на 3 позиции. Сдвиг мы будем осуществлять через признак С, т.о. сохранив знаковый разряд содержимого ячейки.


3 РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ

Для реализации поставленной задачи необходимо загрузить в аккумулятор значение ячейки памяти по адресу 6000Н, затем непосредственно в аккумуляторе выполнять требуемые операции.

 

Рисунок 1. Блок-схема

4 КОДИРОВАНИЕ

Адрес

Код

Команда

5000

11

LXI

D,6000

5001

00

5002

60

5003

1A

LDAX

D

5004

07

RLC

5005

1F

RAR

5006

1F

RAR

5007

1F

RAR

5008

1F

RAR

5009

76

HLT

Таблица 1. Кодирование

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

Начальное и итоговое состояния программы показаны на рисунках 2, 4.

Для того, чтобы запустить программу, необходимо установить счетчик команд по адресу 5000. Затем необходимо ввести в ячейку памяти по адресу 6000Н число, подлежащее переносу. Для этого сделать щелчком "мыши" окно памяти активным и выполнить команду меню: "NavigateJump to".

Регистр (А) служит для хранения значения перемещаемой ячейки. В регистровой паре (DЕ) хранится адрес ячейки , в которой храниться число. PC – счетчик команд. Его необходимо установить на начало программы.

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

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

ЗАКЛЮЧЕНИЕ

В результате проведенной работы были изучены архитектура и системы команд микропроцессора К580, была написана программа, выполняющая перенос значения ячейки памяти с сохранением знакового разряда. Также было осуществлено ассемблирование вручную этой программы на языке ассемблера МП 580 и получены навыки по отладке ассемблерных программ. Для решения задачи была использована справочная литература, содержащая коды команд и другие теоретические сведения.


БИБЛИОГРАФИЧЕСКИЙ СПИСОК

  1.  Степанов А.Н. Архитектура вычислительных систем и компьютерных сетей/А.Н. Степанов – СПб.: Питер, 2007. – 509 с.
  2.  Таненбаум Э. Архитектура компьютера/Э. Таненбаум  – СПб.: Питер, 2003 – 704 с.
  3.  Топольский Д.В. Топольская И.Г., Микропроцессоры. Методические указания по выполнению лабораторных работ. – Челябинск: ЮУрГУ, 2003 – 31с. 

                                                                                                                                                                   4


Начало

An+1)(An)

(A0)(A7)

(C)(A7)

(DE) 6000h

Конец

(A) ((DE))

(An)(An+1)

(C)(A0)

(A7)(C)

(An)(An+1)

(C)(A0)

(A7)(C)

(An)(An+1)

(C)(A0)

(A7)(C)

(An)(An+1)

(C)(A0)

(A7)(C)


 

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

72706. АТОМНІ ЕЛЕКТРИЧНІ СТАНЦІЇ 32.5 KB
  Особливості експлуатації АЕС обумовлені специфікою їх технологічної схеми. Однією з особливостей сучасних паротурбінних АЕС є їх робота на насиченому та слабо перегрітому парі з порівняно невисокими тисками пари перед турбіною 65 МПа.
72709. РЕЗЬБОВОЙ МИКРОМЕТР СО ВСТАВКАМИ 1.49 MB
  Комплексный метод служит для оценки годности резьбы. При этом учитываются погрешности всех параметров резьбы. Контроль резьбы калибрами прост и удобен.
72711. Микрометрический нутромер 198.5 KB
  Устройство и принцип действия прибора Микрометрический нутромер по устройству напоминает микрометр. Цена деления прибора - 001 мм. Настройка прибора на конкретное измерение выполняется путём подбора подходящих удлинителей отсчёт производится п шкалам барабана и стебля.
72713. Индикаторный нутромер 100 KB
  Нутромеры индикаторного вида выпускают со стандартизованными пределами измерений 610 мм 1018 мм и др. К прибору прилагаются сменные стержни и шайбы устанавливающиеся в отверстие тройника головки нутромера. Устройство и принцип действия прибора.
72714. Оптимизация каналов реализации продукции 37.5 KB
  Постановка задачи Определить оптимальную структуру каналов реализации получения максимальной выручки от реализации продукции. Известна цена реализации продукции по каждому каналу реализации табл. цена реализации продукции тыс.