35255

Програмування циклів

Практическая работа

Информатика, кибернетика и программирование

code початок сегменту кода strt: початок модулю strt mov x@dt запис в регістр ах всіх адрес змінних mov dsx запис в регістр ds вмісту регістру ах mov cx len пересилка len в регістр cx xor xx обнуління регістру ах jcxz exit перехід на мітку exit если сх. jne m1 перехід на мітку m1 виконується якщо не еквівалентні ms[si] з нулем inc l збільшення вмісту регістру l на 1 m1: мітка m1 inc si збільшення si на 1 loop cycl організація...

Украинкский

2013-09-09

152 KB

2 чел.

Практична робота №24

Тема: Програмування циклів.

Мета: Навчитися створювати програми на асемблері, виконуючі команди повторення (цикли).

Устаткування: ПК. Програма Turbo Assembler 5.0.

  1.  Правила ТБ.
  2.  Методичні  рекомендації.
  3.  Індивідуальне завдання

Приклад 1. Підрахунок числа нульових символів з використанням команд управління циклом loop

masm     назва відладчика  

model small    модель пам’яті small

.stack 100h    резервування місця у стеку

.data     початок сегменту даних

len equ 10    задання розмірності змінної  len

mas db 1,0,9,8,0,7,8,0,2,0  оголошення змінної mas=1,0,9,8,0,7,8,0,2,0

.code     початок сегменту кода

start:     початок модулю start

mov ax,@data   запис в регістр ах всіх адрес змінних

mov ds,ax   запис в регістр ds вмісту регістру ах

mov cx, len   пересилка  len в регістр cx

xor ax,ax   обнуління регістру ах

jcxz exit   перехід на мітку  exit если сх.=0

    cycl:    мітка переходу cycl

cmp mas[si],0   порівняння вмісту елементу mas[si] з нулем.

jne m1                     перехід на мітку m1 виконується якщо не еквівалентні mas[si] з нулем

inc al    збільшення вмісту регістру al на 1   

    m1:     мітка m1

inc si    збільшення si на 1

loop cycl   організація цикла

    exit:    початок модулю виходу

mov ax,4c00h   запис в регістр ах значення 4с00h

int 21h    переривання з номером 21h

end start    завершення модулю start

  1.  Описати кожен рядок  програми з примера1 (письмово).
    1.  Одержати виконуваний файл програми з примера1.

  1.  Запустити програму у відладчику в режимі трасування в прямому напрямі (виконання по кроках).

  1.  Записати послідовність зміни вмісту регістрів.

  1.  Виконати задачу, відповідну вашому варіанту.

 Варіант 5.

Скласти програму підрахунку числа елементів рядка даних перевищуючих 7.

 masm

model small

.stack 100h

.data

len equ 10

mas db 1,0,9,8,0,7,8,0,2,0

.code

start:

mov ax,@data

mov ds,ax

mov cx,len

xor ax,ax

jcxz exit

    cycl:

cmp mas[si],7

ja m1

inc al

    m1:

inc si

loop cycl

    exit:

mov ax,4c00h

int 21h

end start                                                                 

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                      

Висновок:  я навчилася створювати програми на асемблері, виконуючі команди повторення (цикли).

                                                                               

                                                                                                                                                              

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                


 

А также другие работы, которые могут Вас заинтересовать

58539. Повторение таблицы деления на 9 36 KB
  Цель: повторение навыка умножения на 9, закрепление навыка деления на 9. Задачи: Образовательные: повторить и отработать навык деления на 9. Коррекционные: корректировать логическое мышление на основе упражнений в течении урока, развивать память, внимание, умение сравнивать.
58540. Сценка «Урок математики» 26.5 KB
  Что никто не сделал Все: Мы не поняли Учитель: Да что тут понимать Каждое частное решение дифференциального уравнения является некоторой функцией одной переменной которой в системе координат соответствует некоторая линия называемая интегральной кривой данного дифференциального уравнения. Понятно Все: с готовностью Ага Учитель: Так теперь вопрос на засыпку: Как возвести число в квадрат Ученица 1 выпаливает: Чтобы возвести число в квадрат...
58541. Читання, запис, порівняння чисел. Одноцифрові та двоцифрові числа. Попереднє і наступне число до даного числа. Додавання і віднімання одиниці 55.5 KB
  Мета: продовжувати ознайомлювати учнів з одноцифровим та двоцифровими числами, їх записом, утворенням і читанням; формувати вміння утворювати числа шляхом додавання одиниці до наступного числа і віднімання одиниці від наступного; формувати вміння правильно називати попереднє та наступне число до даного...
58542. Умножение как действие, заменяющее сложение равных чисел. Знак умножения 93.5 KB
  Сколько цветов растет на 3 клумбах при помощи графической модели решим эту задачу. Сколько было клумб 3 Сколько цветов было на каждой клумбе. Сколько групп по 5 точек получилось 3 Сколько всего точек...
58543. Нахождение неизвестного вычитаемого. Нахождение значений выражений 54 KB
  Цель: совершенствовать вычислительные навыки и умение решать задачи; развивать логическое мышление и умение сравнивать, воображение. Формировать активность детей на уроке; повышать мотивацию обучения, интерес к математике...
58544. Організація навчання математики у початкових класах 239.5 KB
  Цій роботі відводять більшу частину уроку при цьому інші частини уроку також підпорядковані вивченню нового. Структура згаданого типу уроку може бути така: 1. Завдання до дому; Послідовність структури елементів може бути і іншою але основна частина уроку присвячена вивченню нового матеріалу. Структура цього уроку схожа на структуру уроку закріплення знань.
58545. Закрепление сложения и вычитания связанных с нумерацией чисел прямой угол. Задачи на нахождение третьего неизвестного слагаемого 60.5 KB
  Пропишем цифры 1 и 3 Какие числа можно составить из этих цифр 13 и 31 Сколько десятков в числе 13 один А единиц три сколько всего единиц тринадцать сколько десятков в числе 31 три а единиц одна Сколько всего едиництридцать одна Это чётные или не четные числа не чётные Открываем тетради....
58546. Числа от 20 до 100 79 KB
  Цели урока. Закрепить навык счета в пределах 100, формировать вычислительные навыки, упражняться в решении простых задач, в нахождении периметра геометрических фигур, в решении логических задач; воспитывать чувство взаимопомощи; развивать интерес к математике...
58547. Урок - основная форма организации обучения математики 64 KB
  Поэтому это влияет на построение урока математики и методики его проведения. Специфика уроков математики обуславливается особенностями освоения детьми материала: абстрактный характер материала требует тщательного отбора наглядных средств методов...