37017

Вивчення команд пересилки (переміщення)

Лабораторная работа

Информатика, кибернетика и программирование

В залежності від того які пристрої беруть участь в пересилці даних розрізняють слідуючі команди: загрузка пересилка і запис в память. Команди пересилки бувають однобайтовими двохбайтовими трьохбайтовими. Всі команди пересилки за виключенням команди POP PSW не міняють вмісту регістра ознак.

Украинкский

2013-09-23

246.5 KB

3 чел.

Лабораторна робота 1

Вивчення команд пересилки (переміщення)

Команди пересилки – це команди пересилки з одного місця в інше. До числа областей зберігання  інформації відносяться як комірки пам’яті так і регістри. В залежності від того які пристрої беруть участь в пересилці даних розрізняють слідуючі команди: загрузка, пересилка і запис  в пам'ять. Команди пересилки бувають однобайтовими, двохбайтовими трьохбайтовими. Всі команди пересилки за виключенням команди POP PSW не міняють вмісту регістра ознак. Приріст програмного лічильника (PC) рівний числу байтів в команді

1 Теоретична частина

1.1 Пересилка з регістра в регістр

При виконанні даної команди в регістр ri завантажується копія даних, які містяться в регістрі rj . В якості регістрів можуть виступати (А), РОН B, C, D, H, L, які мають свій трьохрозядний двійковий код.   Команда виконується за 1 цикл, який містить 5 тактів. В якості одного з регістрів можна вибирати пам'ять  (М). В цьому випадку команда виконується за 2 цикли (7 тактів), при цьому дані пересилаються в регістр із комірки пам’яті, адрес якої міститься в парі регістрів HL 

1.2 Безпосередня пересилка

При виконанні цієї команди в регістр ri  завантажуються дані, які знаходяться у 2 байті команди. Якщо в якості регістра використовується пам'ять (M) то дані пересилаються в комірку пам’яті    .

1.3 Безпосереднє завантаження пари регістрів

 ri   - код старшого регістра пари (B,D,H).

При виконанні команди в 16-розрядну пару регістрів BC, DE, HL заносяться дані,які містяться в 2 і 3 байтах команди, при чому дані заносяться відповідно в молодший і старший регістри пари

 

1.4 Запам’ятовування/завантаження акумулятора і пари HL

 

При виконанні команд групи  а) і б) вміст акумулятора запам’ятовується в оперативній памяті за адресою, що  зберігається в парі регістрів BC (a) і DE(b) відповідно. По командам групи в), г) виконується протилежна дія .

При виконані команд д) і е) вміст акумулятора запам’ятовується в комірці пам’яті, адрес якої приводиться у 2 і 3 байтах команди (д), або ж навпаки(е).

 

При виконані команд ж),з) виконується передача даних із пари регістрів HL в дві сусідні комірки оперативної пам’яті(ж) або воберненому напрямку(з). 16 розрядний адрес першої комірки ОЗУ приводиться в самій команді.

1.5 Ввід із пари регістрів в стек

 ri   - код старшого регістра пари (B,D,H).

При виконанні даної команди за адресою вказівника стека SP  запишеться вміст старшого регістра пари РОН (B,D,H), потім вміст вказівника стеку зменшиться на 1 і в сусідню   комірку [SP-1] запишеться вміст молодшого регістру, а вказівник стеку знову збільшується на 1.   

1.6 Ввід A і F в стек

При виконанні даної команди в комірку пам’яті з адресою що міститься в SP записується вміст акумулятора, а в комірку пам’яті з адресою [SP-1] запишеться вміст регістра ознак(F).

1.7 Вибір із стеку пари регістрів

 ri   - код старшого регістра пари (B,D,H).

Ця команда по дії обернена команді 1.5,  при її виконані вміст комірки пам’яті, адреса якої записана  у вказівнику стеку SP+1, перепишеться в молодший регістр пари  РОН, після чого вміст вказівника стеку збільшиться на 1 і вміст  комірки пам’яті з цим адресом перепишеться в старший регістр.

1.8 Вибір (А)і (F) із стеку

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

Обмін даними

А) обмін між DE и HL

Б) Обмін вершини стеку з HL.

При виконані команд здійснюється обмін даними між регістрами  D – H, E – L(а) , або між регістрами і комірками пам’яті, адреса яких вибираються з регістру SP(вказівник стеку).

Пересилка HL

а)

 

б)

При виконанні цих команд  вміст регістрової пари  HL передається в регістр SP (a) , або в регістр лічильника команд PC(b).

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

  1.  Призначення команд пересилка.
  2.  Розмір команд пересилки.
  3.  Як впливають команди пересилки на вміст регістра ознак?
  4.  Як виконується команда MOV D, M?
  5.  Яка з команд  MOV С, M або  MOV D, Е  потребує більше часу і чому?
  6.  Як виконується команда SPHL?
  7.  Особливості виконання команди POP PSW.

Приклад  лабораторного завдання

Розглянемо  приклад  простої програми на асемблері звикористанням команд пересилки ( програма 1.1)

Потрібно:

  •  Завантажити в регістри  B, C операнди 00h  і 45h використовуючи безпосередню пересилку.
  •  Занести в акумулятор операнд з регістра С.
  •  Занести значення аккумулятора в ОЗУ за адресою, що зберігається в парі регістрів ВС

Адрес

Код команди(машинний код)

Мнемокод

Комментарий

0020

01

LXI B

Код команди

0021

45

Мол. байт операнда

0022

01

Ст. байт операнда

0023

78

MVI А, С

Пересилка в аккумулятор з регістра операнда  

0024

02

STAX B

Завантаження в ОЗУ операнда з акумулятора по адресу, що міститься в ВС

В результаті виконання програми в комірку ОЗУ з адресою 0145h буде записано операнд 45.

Завдання

1. Освоїти принцип роботи команд пересилки.

2.Підготовити відповіді на контрольні запитання.

3. Ознайомитись з роботою програм на прикладі програми 1.1

4 Виконати завдання відносно варіанту(варіант і завдання буде видано на ЛБ)


 

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

60342. Лексикологія. Фразеологія 83.5 KB
  Слово і його лексичне значення. Навчальна: активізувати узагальнити та систематизувати знання студентів про слово як предмет вивчення лексикології про лексичне значення слова про синоніми антоніми та пароніми про фразеологію...
60344. Нормативно-правова база організації та проведення виховної роботи в школі 36.5 KB
  Законодавчі та інші нормативні акти України з питань організації виховної роботи в освітніх закладах: а Державна національна програма Освіта: Україна ХХІ століття про практичне реформування освітньої галузі...
60345. Business hours 63 KB
  Most employees have a five-day working week, Monday through Friday. The working week is between 35 and 40 hours long. Overtime is quite common and is generally paid, often at a premium to the basic rate of pay. The weekend usually starts on Friday night and lasts till Monday.
60346. МЕХАНІЗМ ДІЇ ТА СПЕЦИФІЧНІСТЬ ФЕРМЕНТІВ 30 KB
  Актуальність теми: Знання механізмів дії ферментів лежать в основі медичної ензимології. Здатність ферментів каталізувати одну специфічну реакцію є найбільш важливою їх властивістю.