Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Newline. jcxz Pech; На печать результата
Finish L1: mov cx,N; Счётчик цикла jcxz Pech; На печать результата mov dx, offset T3; Приглашение к вводу Outstr Newline L2: inint ax; Ввод очередного числа cmp ax,-2000 jl L3 cmp ax,5000 jg L3; Проверка диапазона add S,ax; Суммирование jno L3; Проверка на переполнение S mov dx, offset T4 jmp Err L3: loop L2 Pech: outch ′S′ outch ′=′ outint S Newline Finish code ends end start
В качестве ещё одного примера рассмотрим использование циклов при обработке массивов. Пусть необходимо составить программу для решения следующей задачи. Задана константа N=20000, надо ввести массивы X и Y по N беззнаковых чисел в каждом массиве и вычислить выражение Для простоты будем предполагать, что каждое из произведений и вся сумма имеют формат dw (помещаются в слово). Ниже приведена программа, решающая эту задачу. include io.asm N equ 20000; Аналог Const N=20000; Паскаля data1 segment T1 db ′Вводите числа массива $′ T2 db ′Сумма = $′ T3 db ′Ошибка – большое значение!′,10,13,′$′ S dw 0; искомая сумма X dw N dup (?); 2*N байт data1 ends data2 segment Y dw N dup (?); 2*N байт data2 ends St segment stack dw 64 dup (?) St ends code segment assume cs:code,ds:data1,es:date2,ss:st begin_of_program: mov ax,data1 mov ds,ax; ds – на начало data1 mov ax,data2 mov es,ax; es – на начало data2 mov dx, offset T1; Приглашение к вводу Outstr outch ′X′ Newline mov cx,N; счётчик цикла mov bx,0; индекс массива L1: inint X[bx];ввод очередного элемента X[i] add bx,2; увеличение индекса, это i:=i+1 loop L1 outstr; Приглашение к вводу outch ′Y′ Date: 2015-10-18; view: 373; Нарушение авторских прав |