Дан массив из десяти слов, содержащих целые числа. Требуется найти максимальное значение.
Текст программы:
model SMALL
stack 100h
dataseg
MAX dw?
MASS dw 10h,20h,30h,5h,40h,15h,20h,70h,35h,34h
codeseg
startupcode
lea BX, MASS; Загрузить адрес массива
mov CX, 10; Установить счетчик
mov AX, [BX]; Первый элемент массива в аккумулятор
BEG: cmp [BX], AX; Сравнить текущий элемент массива с макс.
jl NO; он меньше
mov AX, [BX]; он больше
NO: add BX, 2; Следующий элемент массива
loop BEG;
mov MAX, AX
;Конец работы
QUIT: exitcode 0
end
ВАРИАНТЫ ЗАДАНИЙ
Дан массив из десяти целых знаковых чисел (слов или байтов). Требуется:
1. Найти количество отрицательных чисел. Массив байтов.
2. Найти суммы всех положительных и отрицательных чисел. Массив слов.
3. Найти среднее арифметическое чисел. Массив слов.
4. Найти количество чисел больших 10h. Массив слов.
5. Найти сумму абсолютных величин. Массив байтов.
6. Найти количество положительных чисел. Массив слов.
7. Поменять местами пары соседних чисел. Массив слов.
8. Переставить числа в обратном порядке. Массив байтов.
|
|
9. Заменить все отрицательные числа нулями. Массив слов.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1. Для чего нужен оператор ptr?
2. В чем отличие команд mov AX, offset MASS и lea AX, MASS?
3. В чем отличие команд mov AX, BX и mov AX, [BX]?
4. В чем отличие команд mov AX, [BP] и mov AX, [BX]?
5. В чем отличие команд mov AX, [BX+2] и mov AX, [BX]+2?
6. В чем отличие команд mov AX, [BX][SI] и mov AX, [SI][BX]?
7. Для организации каких вычислений служат команды loop, loope, loopne?
8. Модифицирует ли какие-нибудь регистры команда loop?
9. Можно ли организовать цикл по счетчику, не используя loop команды?
10. Можно ли организовать цикл while с помощью одной из loop команд?
Лабораторная работа |
ËÎÃÈ×ÅÑÊÈÅ ÊÎÌÀÍÄÛ |
ЦЕЛЬ РАБОТЫ
Цель настоящей работы – освоение логических команд.
ОСНОВНЫЕ СВЕДЕНИЯ
Логические команды
К логическим командам или точнее командам, оперирующим с отдельными битами, можно отнести команды, приведенные ниже, а также команды сдвигов.
ÌÍÅÌÎÊÎÄ | OSZAPC | ДЕЙСТВИЕ |
and DST, SRC | xxxxxx | поразрядное И, DSTDST & SRC |
or DST, SRC | xxxxxx | поразрядное ИЛИ, DSTDST V SRC |
xor DST, SRC | xxxxxx | поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ, DSTDSTÅSRC |
test DST, SRC | xxxxxx | поразрядное И без запоминания результата |
not OPND | xxxxx- | поразрядная инверсия, OPND ~OPND |