49109

Архитектура и системы команд микропроцессора К580. Достоинства и недостатки ассемблера

Курсовая

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

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

Русский

2014-01-07

119.5 KB

13 чел.

ОГЛАВЛЕНИЕ

[0.0.1] Достоинства ассемблера

[0.0.2] Недостатки ассемблера


ВВЕДЕНИЕ

Достоинства ассемблера

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

Недостатки ассемблера

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

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

Задача:  Непрерывно, начиная с числа 0lh, наращивать на единицу содержимое ячейки памяти с адресом 6000h до появления признака переноса. Результат поместить в регистр В.

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

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

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

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

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

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

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

В результате выполнения программы мы должны получить в регистре В значение равное 0. Когда происходит переполнение, признак с становится равным единице. Затем значение являющееся результатом переноса помещается в регистр В.

Вводим данное число в ячейку 6000h и к нему прибавляем единицу. Повторяем это действие до тех пор, пока значение ячейки 6000h не станет равным нулю. Остановка происходит, когда признак с становится равным единице. Результат заносится в регистр В.


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

Для реализации поставленной задачи нужно запомнить входные данные

В программе осуществляется последовательное увеличение содержимого ячейки 6000h на 1 путем сложения до тех пор, пока признак переноса «с» не станет равным «1»

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

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

Адрес

Код

Команда

4000

21

LXI

H,6000h

4001

00

4002

60

L

4003

3E

MVI

A,01h

4004

01

4005

06

MVI

B,01h

4006

01

4007

77

MOV

M,A

4008

88

ADC

B

4009

77

MOV

M,A

400A

D2

JNC

4008h

400B

08

400C

40

400D

47

MOV

B,A

400E

76

HLT

Таблица 1 - кодирование

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

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

Для просмотра результатов выполнения программы нужно посмотреть на окна регистров и флагов. А так же установить в окне памяти начальный адрес 4000h. Для этого сделать щелчком "мыши" окно памяти активным и выполнить команду меню: "NavigateJump to".

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

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

ЗАКЛЮЧЕНИЕ

В результате выполнения программы признак переноса с стал равен 1, соответственно произошёл перенос и программа работает верно.

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

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


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

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

                                                                                                                                                                   4


Начало

H,L)6000h

(A)01h

(B) 01h

Конец

(H,L) (A)

c=0

T

F

(A) (A)+(B)

(H,L) (A)

(B)(A)


 

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

45871. Литьё в кокиль (технология) 172.5 KB
  Литьё в кокиль { технология }. сплавов на долю кокильного литья приходится 40. Основной особенностью кокильного литья явл. При литье чугунных деталей в кокиль возможно получении отбелённого слоя что требует последующей термообработки.
45872. Автоматизация и механизация литейного производства – автоматическая линия литья в ПГФ 1.53 MB
  Автоматизация и механизация литейного производства автоматическая линия литья в ПГФ. Автоматич. процесса и соединённого автоматич. траспортом а также снабжённого автоматич.
45873. Основные понятия заготовок 36 KB
  Прогрессивные заготовки должны отвечать след.Формы и размеры заготовки должны быть так приближены формы и размерам детали. Технологический процесс получения заготовок заключается в последовательном изменении формы размеров шероховатости поверхности а также свойств исходной заготовки и её материала. процесса получения заготовки.
45874. Виды механической обработки материалов резанием 77.21 KB
  Виды обработки резанием Согласно действующему в нашей стране стандарту ГОСТ 25761 83 все виды механической обработки металлов и материалов резанием подразделяются на лезвийную и абразивную обработку. К лезвийной обработке относятся все виды обработки резанием которые осуществляются лезвийным инструментом: точение растачивание долбление сверление зенкерование развертывание фрезерование протягивание. Фрезерование применяют для обработки плоскостей пазов с прямолинейным и винтовым направлением шлицев тел вращения разрезки...
45875. Тепловые явления при резании. Баланс теплоты при резании металлов. Температура резания 860.6 KB
  Температура резания. Исследования процессов теплообразования при резании позволили определить направление и интенсивность тепловых потоков градиенты температур в контактных областях и характеристики температурного поля в зоне резания деталью и окружающей средой а также получить качественное и количественное представление о тепловом балансе при резании различных материалов. Ребиндера установлено что более 995 работы резания переходит в тепло. Температура резания.
45876. Качество обрабатываемой поверхности и поверхностного слоя детали 61.08 KB
  Качество обрабатываемой поверхности и поверхностного слоя детали. Качество детали можно определить геометрическими и физикомеханическими характеристиками её поверхности и поверхностного слоя. Показатели качества детали: геометрические характеристики шероховатость волнистость отклонение формы; физикомеханические характеристики микротвёрдость остаточное напряжение структура. Упрочнение поверхностного слоя: при обработке детали под действием сил резания поверхностный слой металла испытывает упругопластическое деформирование.
45877. Изнашивание режущего инструмента в процессе резания. Критерии и кривые износа 168.52 KB
  Изнашивание режущего инструмента в процессе резания. В процессе работы инструмента в результате высокого контактного давления высокой температуры в зоне резания и большой относительной скорости перемещения происходит износ лезвий инструмента. Различают следующие виды износа: 1 Износ по задней поверхности инструмента. 2 Износ по передней поверхности инструмента.
45878. Критерии оптимизации режима резания при точении. Выбор инструментального материала для резцов 108.19 KB
  Критерии оптимизации режима резания при точении. Основной целью оптимизации является установление таких числовых значений элементов режима резания глубины резания подачи и скорости которые позволяют наиболее производительно с наименьшими затратами осуществлять механическую обработку детали и надежно обеспечить заданное качество обработки. Определить глубину резанияt: t = Dd 2 мм. При черновой обработке необходимо стремиться работать с максимально возможной в данных условиях глубиной резания равной всему припуску или большей части...
45879. Смазочно-охлаждающие технологические среды: назначение, требования, состав, методы отчистки и способы подачи 17.26 KB
  Способы подачи СОЖ: Полить струей жидкости на переднюю поверхность или через насадку с отверстием со стороны задней поверхности. Высоконапорная подача 152 МПа расход СОЖ уменьшается примерно в 20 раз. Функциональные свойства 1Под смазочным действием понимают способность СОЖ образовывать на контактных поверхностях инструмента на стружке и детали прочные пленки полностью или частично предотвращающие соприкосновение передней поверхности со стружкой и задних поверхностей с поверхностью резания. 2Охлаждающее дейстте СОЖ заключается в...