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                                                                 

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                      

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

                                                                               

                                                                                                                                                              

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                

                                                                                


 

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

67369. ПРАВОВОЙ НИГИЛИЗМ И ПРАВОВОЙ ИДЕАЛИЗМ 245.5 KB
  Проблема правового нигилизма и правового идеализма в учебной литературе по теории государства и права до сих пор не рассматривалась. Современное российское общество характеризуется множеством различных противоречий среди которых наблюдается и такое как причудливое переплетение...
67370. Перевантаження операторів введення-виведення даних 85.5 KB
  У розглянутих раніше прикладах програм для виконання операції введення або виведення «класових» даних створювалися функції-члени класів, призначення яких полягало тільки у тому, щоб ввести або вивести ці дані. Незважаючи на те, що у такому вирішенні цих питань немає нічого неправильного, проте у мові...
67371. МЕХАНИЗМ ПРАВОВОГО РЕГУЛИРОВАНИЯ 118.5 KB
  Право — многогранное явление, призванное регулировать общественные отношения. Его можно рассматривать с разных сторон. В роли социального феномена цивилизации, элемента культуры, меры свободы и справедливости право в большей степени...
67372. Форматування даних за допомогою функцій-членів класу ios 645 KB
  Дотепер під час введення або виведення інформації в наведених вище прикладах програм діяли параметри форматування, які за замовчуванням використовує С++-система введення-виведення. Але програміст може сам керувати форматом представлення даних, причому двома способами.
67373. СТИМУЛЫ И ОГРАНИЧЕНИЯ В ПРАВЕ 118.5 KB
  Правовое регулирование не имеет ни вещественной, ни энергетической формы, а осуществляется преимущественно на информационном уровне. Однако информация бывает разная: описательного характера (дескриптивная) и сугубо управленческая, нормативная, предписывающая (прескриптивная).
67374. Створення власних маніпуляторних функцій 532 KB
  Програміст може самостійно створювати власні маніпуляторні функції. Існує два типи маніпуляторних функцій – ті, що приймають (параметризовані) і не приймають аргументи (непараметризовані). Для створення параметризованих маніпуляторів використовуються підходи...
67375. ЛЬГОТЫ И ПООЩРЕНИЯ В ПРАВЕ 162 KB
  Находит новое отражение в законодательстве и учет особых интересов субъектов средством которого выступают правовые льготы. Льготы есть прежде всего социальная мера в этом проявляется их общественная ценность. Кроме того льготы все активнее используются в российской правовой системе...
67376. ИНДИВИД И ЛИЧНОСТЬ 98 KB
  Проблема nостоянства или тождества личности одна из важнейших и наиболее разработанных проблем философии психологии и социологии. Религиозная концепция личности также настаивает на бессмертии и бесконечной ответственности постоянного ядра личности но либо допускает перевоплощение душ...
67377. ЗАКОННОСТЬ И ПРАВОПОРЯДОК 136.5 KB
  Проблема законности одна из центральных в общей теории государства и права. В свете этих изменений существующая в литературе интерпретация законности обладает рядом принципиальных недостатков. Вопервых содержание данной категории не отражает всего многообразия явлений формирующих представления о ней...