Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Програми на асемблері

Реферат Програми на асемблері





OP2 ® OP1

) INC OP1; OP1 +1 ® OP1

В Асемблері команда вирахування:


) SUB OP1, OP2; OP1-OP2 ® OP1

) SBB OP1, OP2; OP1-OP2-CF ® OP1

3) DEC OP1; OP1 - 1 ® OP1.


Приклади:


X=1234AB12h, Y=5678CD34h, + Y=

MOV AX, 1234hBX, AB12hCX, 5678hDX, CD34hBX, DXAX, CX-Y=SUB BX, DXAX, CX


У командах додавання і віднімання можна використовувати будь-які способи адресації. Команди додавання і віднімання змінюють вміст прапорів


OF, CF, SF, ZF, AF, PF.


Прімер1:

AL, 95hAL, 82h

h + 82h=117h

=10010101 2 82=10000010 2

2 +10000010 2=100010111 2,

CF=1, OF=1, SF=0, ZF=0, AF=0, PF=1.


Приклад2:

AL, 9hAL, 5h

- 5=4 травня=00000101 - 5=11111011 9=00001001

+ (-; 5)=11111011 + 00001001=100000100

CF=1, OF=0, SF=0, ZF=0, AF=1, PF=0.


Множення і ділення в Асемблері

Множення беззнакових чисел.

OP2; OP2 * (AL)? (AX)? (EAX) ® AX? DX: AX? EAX.


Множення знакових чисел.

IMUL OP2; аналогічно MUL

IMUL OP1, OP2

OP1 - це завжди регістр, OP2 - безпосередній операнд, регістр або пам'ять.

При множенні результат має подвоєний формат стосовно співмножником. Іноді точно відомо, що результат може вміститися в формат сомножителей, тоді його можна витягати з AL, AX, EAX.

Розмір результату можна з'ясувати за допомогою прапорів OF і CF.

Якщо OF=CF=1, то результат займає подвійний формат,

і OF=СF=0 в іншому випадку. Решта прапори не змінюються.

Ділення беззнакових чисел:

DIV OP2; OP2 це r? m


Ділення знакових чисел.

OP2; OP2 це r? m


В результаті виконання цих команд вміст регістрів

(AX)? (DX: AX)? (EDX: EAX) ділиться на вказаний операнд і результат поміщається в AL? AX? EAX, залишок поміщається в AH? DX? EDX. Значення прапорів не змінюється, але може настати поділ на нуль, або переповнення, наприклад:

AX, 600

MOV BH, 2

DIV BH; 300 не вміщується в AL, буде повідомлення про помилку


Наведемо приклад програми з використанням команд розподілу: цифри цілого беззнакового байтового числа N записати в байти пам'яті, починаючи з адреси D як символи.

Якщо цифри тризначного числа позначити буквами a, b, c - N (abc), то отримати їх можна за формулами:

=N mod 10=(N div 10) mod 10=(N div 10) div 10


Перевести цифру в символ можна так: код (i)=код (0) + I, тоді фрагмент програми може бути таким:


------------------ ...


Назад | сторінка 17 з 29 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Анексія Криму, як можна вірішіті Конфлікт України с Россией чі можна его ві ...
  • Реферат на тему: Алгоритм виконання операцій множення двійкових чисел
  • Реферат на тему: Можливості використання мимовільної пам'яті молодших школярів при форму ...
  • Реферат на тему: Алгоритм Виконання Операції множення чисел в прямому коді
  • Реферат на тему: Розробка обчислювального пристрою для виконання операції множення двійкових ...