Разработка программы на языке Ассемблера. Изучение структуры оператора языка. Разработка простейшей программы

Страницы работы

Содержание работы

Тема: Разработка программы на языке Ассемблера.

Цель работы: изучить структуру оператора языка Ассемблера;  разработать простейшую программу на языке Ассемблера.

Приборы и оборудование: персональный компьютер, прикладная программа QC.

Порядок выполнения работы.

1.  Записать формат операнда. Привести пример. Охарактеризовать поля операндов.

2.  Изучить команды пересылки, сложения, вычитания, инкремента, декремента.

Записать общий вид команд. Дать комментарии.

3.  В соответствии с правилами составления программы написать программу на языке Ассемблера.

4.  Используя возможности программы QC провести проверку правильности выполнения операндов и составить таблицу результатов программы.

5.  Сделать вывод.

Оператор языка Ассемблера содержит четыре поля:

1.  поле метки

2.  поле операции

3.  поле операндов

4.  поле комментарий

В каждом операторе необходимо лишь поле операции, а остальные поля могут отсутствовать.

Пример:

метка      операция     операнды     комментарий

М1:         MOV            АХ, ВХ          ; пересылка

MOV   приемник, источник

MOV -  пересылка операнда в системные регистры (или из системных регистров).

Действие: содержимое операнда источник копируется в операнд приемник.

MOV   АХ, СХ   ; пересылка  содержимого регистра СХ в регистр АХ.

ADD   приемник, источник

ADD – сложение двух целочисленных двоичных операндов.

Действие: приемник  =  приемник  +  источник.

ADD    AX, BX    ; (АХ)=(АХ)+(ВХ).

SUB   операнд1, операнд2

SUB – вычитание.

Действие: команда выполняет целочисленное вычитание: операнд1 = операнд2 – операнд1.

Команда SUB  не различает знаков операндов. Вместо этого она соответствующим образом устанавливает флаги.

SUB АХ, ВХ   ; (АХ)=(ВХ)-(АХ).

INC    операнд

INC – увеличение операнда размером байт, слово, двойное слово на 1. Команда не воздействует на флаг CF.

INC  СХ   ; (СХ)=(СХ)+1.

DEC   операнд

DEC – уменьшение значения операнда на единицу.

Изм

Лист

№ докум.

Подпись

Дата

Разраб.

Рыженко

Лабораторная

работа №6

Лит.

Лист

Листов

Пров.

Лизунова

У

1

2

ГГМТ  ТОС-31

Н.контр.

Утв.

STACK SEGMENT  PARA 'STACK'

STACK ENDS

DATA   SEGMENT  PARA  'DATA'

DATA ENDS

CODE  SEGMENT PARA  'CODE'

BEGIN PROC  FAR

ASSUME      SS: STACK, DS:DATA, CS:CODE

PUSH DS

SUB AX,AX

PUSH AX

MOV AX, DATA

MOV DS, AX

MOV AX,01H

MOV BX,02H

MOV CX,03H

MOV DX,04H

INC AX

DEC CX

ADD AX,CX

ADD DX,BX

SUB AX,DX

RET

BEGIN ENDP

CODE ENDS

END BEGIN

Лист

2

Изм

Лист

№ докум.

Подпись

Дата

Похожие материалы

Информация о работе

Тип:
Задания на лабораторные работы
Размер файла:
46 Kb
Скачали:
0