Assembler. Лабораторная работа №2. (4 часа).
“Разработка программ с ветвлениями”.
Цели:
Ход работы:
1. Изучить (повторить) теоретический материал: Тема 9. Программирование ветвлений.
2. Выполнить контрольный тест по теме №9 "Программирование ветвлений".
3. Получить (уточнить) у преподавателя номер своего варианта.
4. На данную работу предлагается 2 задачи:
первая - программирование простых условий (4 балла);
вторая - программирование составных условий (6 баллов).
5. Выбрать из списка номер вашего варианта:
6. Прочитать условие задач, если возникли вопросы по условию, задайте их преподавателю.
7. Внимательно изучить пример программы.
8. Разработать программы для своего варианта.
9. Протестировать программы.
10. Оформить отчет по лабораторной работе - в начале asm-файлов записать как комментарий:
11. Сдать преподавателю выполненную работу: скопировать папку с файлами проекта (asm, obj, exe) в папку "Рабочий стол\ЛР-сдача\№группы_Фамилия_№ЛР", например, 29в_Петров_2. Оценки по проверенным работам можно посмотреть в электронном журнале.
; Составить программу вычисления функции y:
; (a+b)/a,
если a=b
; y = (a+b)/b, если a<b
; (a+b)/(a*b), если a>b
;===============================
.model small ;определение модели памяти
.stack
100h ;начало сегмента стека
.data
;начало сегмента данных
a dw -1
b dw -2
y dw ?
;===============================
.code
begin:
mov ax,@data
mov
ds,ax
mov
ax,a
add
ax,b
;y:=a+b
mov
y,ax
mov
ax,a
cmp
ax,b
je var1
;на вариант a=b
jl var2
;на вариант a<b
var3: mov
ax,a ;a>b
imul b
mov
bx,ax
mov
ax,y
cwd
idiv bx
jmp
exit
var2: mov ax,y ;a<b
cwd
idiv b
jmp
exit
var1: mov ax,y ;a=b
cwd
idiv a
exit: mov y,ax ;запись y
mov
ah,4ch ;выход в ОС
int 21h
end begin
Индивидуальные задания
1. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 2; b= 2 b) a= 1; b= 2 c) а= 1; b= -2
2. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 2; b) x= 6; c) x= 11
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 4; b) x= 5
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= -3;
b= -4 b)
a= 2;
b= 2 c) а= 2;
b= -4
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 6; b) x= 5
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= -2;
b= -2 b)
a= 2;
b= 3 c) а= 2;
b= -3
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 8; b) x= 5
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= -2;
b= 4 b)
a= 2;
b= -4 c) а= 6;
b= 4
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= -8; b) x= 25
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= -2;
b= -3 b)
a= 5;
b= -2 c) а= 2; b= 3
1. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= -2; b= 4 b) a= 6; b= 5 c) а= 2; b= 2
2. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= -2; b) x= 6; c) x= -6
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 8; b) x= 12
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 2;
b= 2 b)
a= -3;
b= -2 c) а= -2; b= 3
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a)
x= -2; b)
x= 2; c)
x= 0
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 1;
b= 3 b)
a= -1;
b= -3 c) а= 2;
b= -4
1. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 2; b= 3 b) a= 1; b= -5 c) а= 2; b= 2
2. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= -2; b) x= 2; c) x= 6
1. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 15; b= 16 b) a= 12; b= 10 c) а= 5; b= 5
2. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= -5; b) x= 0; c) x= 2
1. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 4; b= 1 b) a= 1; b= 4 c) а= 4; b= 4
2. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= -5; b) x= 1; c) x= 6
1. Составить программу для вычисления функции y(x):
Протестировать программу при следующих значениях исходных данных: a) x= 0; b) x= 6; c) x= 5
2. Составить программу для вычисления функции y(a,b):
Протестировать программу при следующих значениях исходных данных: a) а= 2;
b= 4 b)
a= 1;
b= 3 c) а= 2;
b= 5