Образовательная программа 6B06104 «Вычислительная техника и программное обеспечение»



бет25/27
Дата19.10.2022
өлшемі10,77 Mb.
#153958
түріОбразовательная программа
1   ...   19   20   21   22   23   24   25   26   27
Байланысты:
Lab raboty Arkhitektura i organizatsia EVM

3. Требование к отчету.
Сдача лабораторной работы заключается в демонстрации решения задач по «Архитектура и организация ЭВМ», в ответах на контрольные вопросы.
Содержание отчета.
1. Титульный лист
2. Цель
3. Задание
4. Решение задачи
5. Ответы на контрольные вопросы

4. Контрольные вопросы

  1. Как включить отладчик в Visual Studio?

  2. Для чего нужен Debug?

  3. Как работает отладчик?

  4. Как включить режим отладки?


Лабораторная работа №.6
Изучение системы команд ассемблера

Цель: изучить основные виды команд ассемблера и научиться применять их при написании простых приложений с помощью отладчика DEBUG.


План.
1. Используемые системы счисления.


2. Варианты заданий к лабораторной работе.
3. Требование к отчету.
4. Контрольные вопросы.

Краткая теоретическая часть


Команды языка ассемблера один к одному соответствуют командам процессора, фактически они представляют собой более удобную для человека символьную форму записи (мнемокод) команд и их аргументов. При этом одной команде языка ассемблера может соответствовать несколько вариантов команд процессора.
Кроме того, язык ассемблера позволяет использовать символические метки вместо адресов ячеек памяти, которые при ассемблировании заменяются на автоматически рассчитываемые абсолютные или относительные адреса, а также так называемые директивы (команды, не переводящиеся в процессорные инструкции, а выполняемые самим ассемблером).
Директивы ассемблера позволяют, в частности, включать блоки данных, задать ассемблирование фрагмента программы по условию, задать значения меток, использовать макроопределения с параметрами.
Каждая модель (или семейство) процессоров имеет свой набор команд и соответствующий ему язык ассемблера. Наиболее популярные синтаксисы – Intel-синтаксис и AT&T-синтаксис.
Существуют компьютеры, реализующие в качестве машинного язык программирования высокого уровня (Forth, Lisp, Эль-76), фактически в них он является языком ассемблера.
Одними из самых важных и используемых команд ассемблера являются:

  • mov приемник, источник – команда пересылки данных. Копирует содержимое источника в приемник, источник не изменяется. Например: mov ax, 1 присваивает регистру ax значение

1. Команда mov ax, word ptr eax – записывает в ax слово, лежащее по адресу eax. Байт по адресу eax записывается в младшую половину ax (в al), а байт по адресу eax+1 записывается в ah (по закону Intel). Но не обязательно, записывая команды, использовать такую сложную адресацию. Например, если у нас есть переменая “y” типа longint, то при помощи следующей команды ей можно присвоить значение 10000: mov y, 10000. Можно так- же записать mov dword ptr y, 10000, показывая, что “y” – 32-раз рядная переменная. Если записать mov dword ptr [y+10], 5000, то, начиная с адреса [y+10], в память будет записано 32-битное число 5000.


Можете не бояться писать подобные вещи (прибавление константы к адресу), так как все эти выражения вычисляются на стадии компиляции и на скорость программы не влияют.

Пусть, например, “y” находится по адресу 34567. Если мы запишем [y+10], то компилятор просто поймет это как [32577], так как он знает адрес переменной “y”. Операнды команды mov могут быть как регистрами, так и переменными, но одновременно оба операнда не могут быть переменными;


1   ...   19   20   21   22   23   24   25   26   27




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет