49150

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

Курсовая

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

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

Русский

2013-12-21

153 KB

7 чел.

ОГЛАВЛЕНИЕ

[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)


 

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

70542. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ: КОНСПЕКТ ЛЕКЦИЙ 1.36 MB
  Учебная дисциплина БЖД обязательная общеобразовательная дисциплина в которой соединена тематика безопасного взаимодействия человека со средой обитания и вопросы защиты от негативных факторов и чрезвычайных ситуаций. В результате изучения курса Безопасность жизнедеятельности специалист...
70543. Моя родина 16.8 KB
  Програмовий зміст: формувати у дітей поняття «родина, сім'я», виховувати любов до свої родини і до свої родичів, розвивати навички спілкування, відповідати на запитання вихователя; вчити помічати гендерні відмінності, уважно слухати художній твір, виконувати рухи, відповідні до тексту...
70545. Этапы развития технических средств и информационных ресурсов 17.31 KB
  Критерии информационной культуры человека: 1 умение адекватно формулировать потребность в информации; 2 эффективно осуществлять поиск нужной информации; 3 перерабатывать информацию и создавать качественно новую; 4 наличие коммуникативных навыков Развитие мировых информационных...
70546. ИЗМЕРЕНИЕ ИНФОРМАЦИИ 19.22 KB
  В содержательном подходе возможна качественная оценка информации: новая, срочная, важная и т.д. информативность сообщения характеризуется содержащейся в нем полезной информацией - той частью сообщения, которая снимает полностью или уменьшает неопределенность какой-либо ситуации.
70547. ПРЕДМЕТ І МЕТОД ІСТОРІЇ ЕКОНОМІКИ ТА ЕКОНОМІЧНОЇ ДУМКИ. ОСОБЛИВОСТІ ГОСПОДАРСЬКОГО РОЗВИТКУ ТА ЕКОНОМІЧНОЇ ДУМКИ СТАРОДАВНІХ ЦИВІЛІЗАЦІЙ 1.22 MB
  На відміну від східного рабська праця стала основною продуктивною силою суспільного виробництва. Досягнення промислового виробництва практично не були успадковані варварськими народами. в Європі виникла нова вища форма виробництва мануфактура велика робітнича майстерня заснована на ручній...
70548. Політологія: Конспект лекцій 309.19 KB
  Термін «політика» - неоднозначний, його трактували по-різному: як певний вид соціального управління, розподілу благ, спосіб завоювання та реалізації влади, форму організації суспільства і державних інститутів, особливий вид відносин індивідів і соціальних груп та ін.
70549. КОНСПЕКТ ЛЕКЦИЙ ПО ЭКОНОМИКЕ 1.33 MB
  Предметом экономической теории является экономическое поведение людей в процессе производства, распределения, обмена и потребления материальных благ с целью получения максимального дохода в условиях ограниченных ресурсов и безграничного потребления.