Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kolokvium_z_OOP_2010_vsi.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
133.27 Кб
Скачать
  1. Цілий тип зі знаком – двійкове значення зі знаком розміром 8,16,32 біти

    1. 8-розрядне ціле

    2. 16-розрядне ціле

    3. 32-розрядне ціле

  2. Вказівник

    1. ближній(Near);

    2. дальній(Far);

  3. Ланцюжок – неперервний набір байтів, слів чи подвійних слів.

  4. Бітове поле – неперервна послідовність бітів(до 32), у якій кожен біт незалежний і може розглядатися як окрема змінна.

  5. Незапаковане двійково-десяткове (BCD) число– побайтове представлення десяткової цифри від 0 до 9.

  6. Запаковане двійково-десяткове число є запаковане представлення двох десяткових цифр від 0 до 9 в одному байті.

Директиви резервування та ініціювання простих типів даних:

<ім’я «змінної»><назва директиви><вираз>

Назва директиви містить одну з наступних мнемонік:

  • DB – резервування пам’яті для даних розміром 1 байт;

  • DW – резервування пам’яті для даних розміром 2 байт;

  • DD – резервування пам’яті для даних розміром 4 байт;

  • DFiDP – резервування пам’яті для даних розміром 6 байт;

  • DQ – резервування пам’яті для даних розміром 8 байт;

  • DT – резервування пам’яті для даних розміром 10 байт;

Математичний копроцесор (FPU) обробляє три формати чисел з плаваючою комою:ординарної, подвійної та розширеної точності. Ці числа називають відповідно:

  • коротким дійсним(7 знаків після коми)

  • подвійним дійсним(15 знаків після коми)

  • розширеним дійсним(19 знаків після коми)

Кожне число цих форматів містить три поля: знак числа, порядок і мантиса. В оперативній пам’яті, залежно від формату, ці числа займають відповідно 4, 8, 16 байт. Нуль у знаковому біті означає, що число додатне, 1 – від’ємне.

  1. Команди умовних переходів, регістр прапорців та команди циклів.

Для забезпечення передачі управління у asm-програмах використовують безумовні та умовні переходи та команди управління циклами.

Умовні переходи:

  • JA/JNBEперехід, якщо вище(після порівняння беззнакових операндів)

  • JAE/JNB перехід, якщо вище або дорівнює

  • JB/JBAE/JC перехід, якщо нижче

  • JBE/JNA перехід, якщо нижче або дорівнює

  • JCXZ перехід, якщо вміст Сх=0

  • JE/JZ перехід, якщо рівно або нуль

  • JG/JNLE перехід, якщо більше (після порівняння знакових операндів)

  • JGE/JNL перехід, якщо >=

  • JL/JNGE перехід, якщо <

  • JLE/JNG перехід, якщо <=

  • JNC перехід, якщонемає перенесення

  • JNE/JNZ перехід, якщо <>або не нуль

  • JNO перехід, якщо немає переповнення

  • JNP/JPOперехід, якщо парний

  • JOперехід, якщо є переповнення

  • JP/JPEперехід, якщо парний

  • JS перехід, якщо негативний

Intel-сумісний МП має декілька регістрів, які постійно містять інформацію про стан як самого ПК, так і програми, команди якої в даний момент завантажені на конвеєр. До цих регістрів належить і eFlags/Flags – регістр прапорців. Його розрядність 32/16 біт. Окремі біти цього регістра мають певне функціональне призначення, їх називають прапорцями. Виходячи з особливостей використання їх можна розділити на групи,одна з яких вісім прапорців стану.

Ці прапорці можуть змінюватись після виконання певних машинних команд. Вони відображають особливості результату після виконання певних арифметичних або логічних операцій. Це дає змогу аналізувати стан обчислювального процесу і реагувати на нього за допомогою команд умовних переходів чи викликів підпрограм.

      • CF (Carry Flag) – прапорець перенесення

      • PF (Parity Flag) – прапорець парності

      • AF (AuxiliaryCarryFlag) – допоміжний прапорець перенесення

      • ZF (Zero Flag) – прапорець нуля

      • SF (Sign Flag) – прапорець знаку

      • OF (Overflow Flag) – прапорець переповнення

      • IOPL(Input/OutputPriviliageLevel)–рівень привілейованості вводу/вивод.

      • NT(NestedTask) – прапорець вкладеності задачі

КомандиLOOP,LOOPE,LOOPNE слугують для організації циклів. Усі вони використовують вміст регістра Сх як лічильник числа повторень. Команда LOOP зменшує Сх на одиницю і передає управління на мітку циклу, якщо вміст цього регістра не дорівнює нулю. Команди LOOPEі LOOPNE також зменшують регістр Сх, проте передають управління на початок циклу за одночасної умови встановлення або скидання прапорця ZF і за умови, що вміст лічильника Сх не дорівнює нулю.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]