Организация циклов в Ассемблере. Цикл – это многократно повторяющаяся последовательность операторов.

Презентация:



Advertisements
Похожие презентации
Циклы в языке Ассемблер.. Цикл со счетчиком Цикл со счетчиком можно организовать с помощью конструкций IF и GOTO. В нашем примере тело цикла должно повторяться.
Advertisements

Организация повторений в Паскале. Найди ошибки: Program new Uses crt; Var a, b, c integer Begin clrscr Readln(a,b); C:=a*a+b*b Wreteln(c); End.
Организация повторений в Паскале. i,1,n Действие 1 Действие 2 i,1,n Действие 1 Действие 2 FOR i:=1 TO N DO BEGIN действие 1; действие 2; END; FOR i:=1.
Алгоритмическая структура цикл Алгоритм циклической структуры - это алгоритм, в котором происходит многократное повторение одного и того же участка программы.
В алгоритмической структуре «цикл» серия команд (тело цикла) выполняется многократно. Циклы бывают 2 типов: 1.Цикл со счетчиком. Используется когда заранее.
Язык программирования Паскаль 6 часть. ЦИКЛЫ Повторение некоторой последовательности действий называется циклом.
Цикл – это команда исполнителю многократно повторить указанную последовательность действий.
Циклические конструкции 1. Цикл с предусловием предусловием 2. Цикл с постусловием постусловием 3. Цикл с параметром параметром 4. Вложенные циклы Вложенные.
program qq; var i, i2, i3: integer; Begin for i:=1 to 8 do begin i2 := i*i; i3 := i2*i; write(i,, i2,, i3, ); end; end. Вывести на экран квадраты и кубы.
ПРОГРАММИРОВАНИЕ ПОВТОРЕНИЙ. НАЧАЛО AB A, B, C A = A + C F = B + C F КОНЕЦ B = B + C F = A + B B < C A = A + B F = A + C нет да A = 1, B = 1, C = 4 F=?
Циклический алгоритм –это алгоритм команды которого выполняются несколько раз подряд. В языке Паскаль имеется три различных оператора цикла: 1. Оператор.
ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Организация циклических процессов начало К:=1 S:=1 N:=5 K<=N S:=S*K K:=K+1 S конец данет При решении многих задач вычислительный процесс имеет циклический.
ПРОГРАММИРОВАНИЕ ПОВТОРЕНИЙ МОУ «Средняя общеобразовательная школа 41» Учитель информатики: Рассохина Г.В. САРАНСК 2008.
Циклические алгоритмы. Цикл - это такая алгоритмическая структура, в которой осуществляется многократное повторение одной ( или нескольких ) команд.
Тема: «Циклы». Содержание Цикл с параметром Структура цикла Операторы Решение задачи Цикл с предусловием Структура цикла Операторы Решение задачи Цикл.
Циклы на языке Pascal повторение. Циклы позволяют многократно выполнять одну или группу команд, причем в тексте программы нет необходимости записывать.
ОПЕРАТОРЫ ПОВТОРА (ЦИКЛА). ЦИКЛ-одна из важнейших алгоритмических структур. ЦИКЛ представляет собой последовательность операторов, которая выполняется.
Алгоритмические структуры. Алгоритм Алгоритм - понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных.
АЛГОРИТМИЧЕСКАЯ СТРУКТУРА ЦИКЛ АЛГОРИТМИЧЕСКАЯ СТРУКТУРА ЦИКЛ В TURBO PASCAL Условие Оператор ДаНет Учитель информатики: Коваленко Татьяна Викторовна
Транксрипт:

Организация циклов в Ассемблере

Цикл – это многократно повторяющаяся последовательность операторов

Типы циклов «ПОКА» «ДО» «ДЛЯ»

Циклы в Паскале

Цикл «ПОКА» While X > 0 do S A:If X > 0 then begin S; тело цикла Goto A; end;

Цикл «ДО» Repeat S until X > 0 A:S; тело цикла If (X < 0) or (X = 0) then Goto A;

Цикл «ДЛЯ» For I := 1 to N do S I: = 1; A:S; тело цикла I:=I+1; If (I < N) or (I = N) then Goto A;

Циклы в Ассемблере

Цикл «ПОКА» A:CMP X, 0 JLE A2 S; тело цикла JMP A A2: … While X > 0 do S

Цикл «ДО» A:S; тело цикла CMP X, 0 JLE A Repeat S until X > 0

Цикл «ДЛЯ» MOV CX, N A:S; тело цикла DEC CX CMP X, 0 JNE A For I := 1 to N do S

Команда LOOP Общий вид: LOOP Функции команды: Автоматически уменьшает значение счетчика. Выполняет проверку на выход из цикла. Выполняет переход на начало тела цикла. Используется в случае цикла с известным числом повторений, т.е. цикла «ДЛЯ». Количество повторений цикла должно быть присвоено регистру СХ до начала цикла.

Цикл «ДЛЯ» MOV CX, N A:S; тело цикла DEC CX CMP X, 0 JNE A MOV CX, N A:S; тело цикла LOOP A Без использования команды LOOP С использованием команды LOOP

ПРИМЕР Составим программу, которая выводит на экран 1000 нулей

(1) prg segment para public 'code' (2) assume cs:prg,ss:prg,es:prg,ds:prg (3) org 100h (4) start: jmp go (5) go: (6) mov ax, 0600h (7) mov bh,07 (8) mov cx, 0000 (9) mov dx,184fh (10) mov cx,1000 (11) Zero: (12) mov ah,02 (13) mov dl,30h (14) int 21h (15) loop Zero (16) ret (17) prg ends (18) end start Решение:

Задачи для практики

Задача 1 Составить фрагмент программы на языке Ассемблер, подсчитывающий сумму первых 10 натуральных чисел (результат записать в АХ). Решение: ….. mov cx,10 mov ax,00 summa: add ax,cx loop summa …..

Задача 2 Составить фрагмент программы на языке Ассемблер, вычисляющий значение выражения: (результат записать в АХ). Решение: ….. mov BX,00 mov CX,05 sum: mov AX,02 mul CX add BX,AX loop sum …..

Задача 3 Составить фрагмент программы на языке Ассемблер, вычисляющий факториал заданного числа К (К – от 0 до 8; результат записать в АХ). Решение: ….. mov ax, 1 mov cx, К F: mul cx loop F …..