У вас вопросы?
У нас ответы:) SamZan.net

Тема- Програмування розгалужень

Работа добавлена на сайт samzan.net: 2016-03-05

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 2.2.2025

ПМ-11 ОССП Прокопенко Д.

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

Тема: Програмування розгалужень.

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

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

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

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

masm  ;формат директиви

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

.stack 100h ;початок сегменту стека

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

n equ 10 

stroka db 'acvfgrndup' 

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

 start: 

 mov ax,@data 

 mov ds,ax ;команда пересилки даних

 xor ax,ax ;логічне виключення АБО

 mov cx,n 

 lea bx,stroka ;завантаження ефективної адреси

m1:  

 mov al,[bx]

 cmp al,61h ;порівняння операндів

 jb next ;перехід нижче (jump – перехід, bBelow)

;

 cmp al,7ah 

 ja next ;перехід вище (jump – перехід, а – Above)

 ; 

and al,11011111b ;логічне і

mov [bx],al 

next:  

 inc bx ;збільшити операнд на 1

 dec cx ;зменшення операнда на одиницю

 jnz m1 

exit:  ;функція зав. програми

 mov ax,4c00h ;код завершення програми

 int 21h ;переривання

end start ;кінець тексту програми

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

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

Затем цикл повторяется 10 раз.

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

Контрольні питання.

  1.  Команди умовного переходу і прапори.

Назва прапора

Номер бита в регістрі eflags/flags

Команда умовного переходу

Значення прапора для здійснення переходу

Перенесення CF

1

JC

CF = 1

Парності PF

2

JP

PF = 1

Нуля ZF

6

JZ

ZF = 1

Знаку SF

7

JS

SF = 1

Переповнювання OF

11

JO

OF = 1

Перенесення CF

1

JNC

CF = 0

Парності PF

2

JNP

PF = 0

Нуля ZF

6

JNZ

ZF = 0

Знаку SF

7

JNS

SF = 0

Переповнювання OF

11

JNO

OF = 0

  1.  Команда порівняння CMP.

Команда порівняння СМР (СоМРаrе) має цікавий принцип роботи. Він абсолютно такій же, як у команди віднімання SUB. Команда СМР так само, як і команда SUB, виконує віднімання операндів і за наслідками порівняння встановлює прапори. Єдине, чого вона не робить, — не записує результат віднімання на місце першого операнда.

Синтаксис команди СМР:

cmp операнд_1,операнд_2

  1.  Команди безумовної передачі управління.
  •  безумовного переходу;
  •  виклику процедури і повернення з процедури;
  •  виклику програмних переривань і повернення з програмних переривань.
  1.  Команди умовної передачі управління.
  •  переходу по результату команди порівняння;
  •  переходу за станом певного прапора;
  •  переходу по вмісту регістра ЕСХ/СХ.
  1.  Мітка переходу.

Синтаксис команди:

 loop метка_перехода

Команда реалізує описані далі дії.

  1.   Декрімент регістра ЕСХ/СХ.
  2.   Порівняння регістра ЕСХ/СХ з нулем:
    •  якщо (ЕСХ/СХ) > 0, те управління передається на мітку переходу;
    •  якщо (ЕСХ/СХ) = 0, те управління передається на наступну після LOOP команду.

Команди LOOPE і LOOPZ (Loop still сх <> 0 or Zero flag = 0 — повторити цикл поки СХ<> 0 або ZF = 0) — абсолютні синоніми.

Юппе Ян 1ПМ-11 ОССП




1. Россия как среда
2. исполнительное устройство и исполнительный механизм иногда употребляются как синонимы
3. ....Маленькое Вы были в постели.html
4. Нанотехнологии толкают мир к революции
5. Реферат- Предмет і система фінансового права
6. Бутусов Вячеслав
7. История Севастополя
8. Организационно-кадровый аудит
9. це напад Німеччини на СРСР 22 червня 1941 р
10. реферату- Заходи держави щодо залучення іноземного капіталуРозділ- Економіка підприємства Заходи держави