Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мікропроцесори в ЕА.doc
Скачиваний:
0
Добавлен:
24.08.2019
Размер:
168.96 Кб
Скачать

МІКРОПРОЦЕСОРИ В ЕА

Завдання1

Отримати результат додавання десятинних чисел 60 та 53 у двоїнній формі.

Можливий варіант вирішення:

1)60 = 00111100В

2) 53= 00110101В

3) 00111100В

+00110101В

01110001В

Відповідь: 01110001В

Завдання № 2

Перевести шістнадцятирічне число 3С8АН у двоїнну форму

Можливий варіант вирішення:

  1. 3 = 0011

  2. С=1100

  3. 8=1000

  4. А=1010

  5. 3С8АН= 11 1100 1000 1010

Відповідь:

11 1100 1000 1010

Завдання № 3

Підрахувати 20-розрядний фізичний адрес, якщо сегментний адрес дорівнює 038Е[0]Н, а зміщення – 0032Н

Можливий варіант вирішення:

038Е[o]H

+ 0032H

03912 H

Відповідь:

03912Н

Завдання № 4

Перерахувати усі шістнадцятирозрядні регістри мікропроцесора 8086.

Можливий варіант вирішення:

AX, BX, CX, DX,CS,DS, SS, ES, SP, BP, IP, SI,DI

Відповідь:

AX, BX, CX, DX,CS,DS, SS, ES, SP, BP, IP, SI,DI

Завдання5

Вкажіть довжину наступних елементів даних: параграфу, слова, байту, кілобайту.

Можливий варіант вирішення:

16, 2, 1, 1024

Відповідь:

16, 2, 1, 1024

Завдання № 6

Перетворіть наступні від’ємні двоїнні числа у відповідні додатні (прямий код): 11001100, 10101010, 11111111

Можливий варіант вирішення:

1) 01001100, 00101010, 01111111

Відповідь:

01001100, 00101010, 01111111

Завдання № 7

Складіть двоїнні числа 11001011 та 01110111.

Чому дорівнює десятинне значення вісьмирозрядної двоїнної суми?

Можливий варіант вирішення:

11001011

+ 01110111

1 01000010 = 64 + 2 = 66

Відповідь:

66

Завдання № 8

Поясніть наступні терміни: сегмент, зміщення, межа сегменту.

Можливий варіант вирішення:

Сегмент – це область пам’яті для зберігання коду, даних та стеку. Зміщення – це відстань від початку сегменту до будь-якої чарунки пам’яті. Адреса початку сегменту зберігається у сегментному регістрі

Відповідь: Сегмент – це область пам’яті для зберігання коду, даних та стеку. Зміщення – це відстань від початку сегменту до будь-якої чарунки пам’яті. Адреса початку сегменту зберігається у сегментному регістрі

Завдання № 9

Напишіть фрагмент коду програми, що вміщує число 0FFH до регістрів: СХ, СН, CL

Можливий варіант вирішення:

mov cx, 0ffh

mov ch, 0ffh

mov cl, 0ffh

Відповідь: mov cx, 0ffh

mov ch, 0ffh

mov cl, 0ffh

Завдання № 10

Визначте, які прапорці відповідають за такі події: сума чисел є від’ємною, сума дорівнює 0, строкові дані зміщуються ліворуч.

Можливий варіант вирішення:

Прапорці SF, ZF, DF відповідно

Відповідь: SF, ZF, DF

Завдання № 11

Поясніть різницю між директивою та командою (інструкцією). Наведіть по два приклади кожної з них.

Команда – це мнемонічне позначення команди мікропроцесору – генерує машинний код. Директива коду не генерує.

Директиви : END, assume

Команди: Mov ax, 0, add cx, dx


Відповідь:

Завдання № 12

Яка довжина у байтах елементів даних, що створюються директивами DB, DW, DD?

Можливий варіант вирішення:

1, 2, 4

Відповідь: 1, 2, 4

Завдання № 13

Чим суттєво відрізняються наступні команди: mov bx, 45Н,

Mov [bx], 45Н?

Можливий варіант вирішення:

Перша команда пересилає константу до регістру, а друга пересилає константу 45Н до чарунки пам’яті, адреса якої знаходиться у регістрі.

Відповідь: Перша команда пересилає константу до регістру, а друга пересилає константу 45Н до чарунки пам’яті, адреса якої знаходиться у регістрі.

Завдання № 14

Знайдіть помилку у команді. Як її виправити?

add [si] , [bx]

Можливий варіант вирішення:

Неможливо складати дві чарунки пам’яті. Треба скласти чарунку та регістр, наприклад:

Mov ax, [bx]

Add [si], ax

Відповідь: Неможливо складати дві чарунки пам’яті. Треба скласти чарунку та регістр, наприклад:

Mov ax, [bx]

Add [si], ax

Завдання № 15

Як однією командою поміняти місцями вміст слова ТЕТ та регістру АХ?

Можливий варіант вирішення:

Наприклад, XCHG TET, AX

Відповідь: XCHG TET, AX

Завдання № 16

Складіть вміст регістрів СН та ВН. Результат перемножте на вміст регістру DH.

Можливий варіант вирішення:

add ch, bh

mov al, ch

mul dh

Відповідь:

add ch, bh

mov al, ch

mul dh

Завдання № 17

Перемножити зміст регістру ах на 3 без використання команди перемноження.

Можливий варіант вирішення:

mov bx,ax

shl ax, 1

add ax, bx

Відповідь:

mov bx,ax

shl ax, 1

add ax, bx

Завдання № 18

Як визначити кількість повторень та напрямок обробки для рядкових даних?

Можливий варіант вирішення:

Кількість повторень – у регістрі сх, а напрямок визнaчається прапорцем df

Відповідь: Кількість повторень – у регістрі сх, а напрямок визнaчається прапорцем df

Завдання19

Які діапазони припустимих чисел у форматах байта та слова для знакових чисел?

Можливий варіант вирішення:
  1. -27=-128

  2. 27-1=127

  3. -215=-32768

  4. 215-1=32767

Відповідь: -128 - +127

-32768 - + 32767

Завдання20

Поясніть різницю між переносом та переповненням у арифметичних операціях

Можливий варіант вирішення:

Переніс – із старшого розряду числа, а переповнення –переніс у знаковий.

Відповідь: Переніс – із старшого розряду числа, а переповнення –переніс у знаковий.

Завдання21

Які дільники, окрім нуля, викликають помилку переповнення?

Можливий варіант вирішення:

Дільники, що є менші, аніж значення старшого байту ділимого, викликають переповнення.

Відповідь:

Дільники, що є менші, аніж значення старшого байту ділимого, викликають переповнення.

Завдання22

Перетворити десятинне число 3451 у двоїнно-десятинний формат.

Можливий варіант вирішення:

03040501Н

3451Н

Відповідь: 03040501Н

3451Н

Завдання № 23

Перемножити байти АА та ВВ, результат записати у СС

Можливий варіант вирішення:

mov al, AА

mul BB

mov cc, ax

Відповідь: mov al, AA

mul BB

mov cc, ax