Page 179 - 4503
P. 179
із підпрограми, sleep — перехід до «сплячого» режиму,
nop — немає операції, retfie — повернення із
переривання. У всіх цих командах у старших семи розрядах
наявні нулі. Наприклад команда clrwdt має ось такий
машинний код — 00000000000100.
6.2 Адресація константи
13 12 11 10 9 8 7 6 5 4 3 2 1 0
1 1 ? ? ? ? L L L L L L L L
У командах з таким способом адресації, наприклад:
movlw, addlw, andlw молодщий байт (біти 0…7) містять
дані про операнд, котрий є константою, а не адресою в
пам’яті даних. Наприклад команда addlw 06 в машинному
коді має такий вигляд — 1111100000110. Операндом–
адресатом таких команд завжди залишається робочий регістр
(w — англ. work — робочий). На мові регістрових передач RTL
( англ. Register Transfear Language) ця операція подається у
такий спосіб:
[W]← [W] +#06
Символ # вказує на те, що поруч розміщена константа.
Іноді такий спосіб називають безпосередньою адресацією,
оскільки значення даних подається безпосередньо у записі
команди, тобто без звернення до пам’яті даних. Це значення є
константою (l англ. literal — константа), а не змінною
величиною, тому її можна у програмі заявити безпосередньо,
а не виділяти їй певну комірку пам’яті даних.
6.3 Абсолютна адресація пам’яті програм
13 12 11 10 9 8 7 6 5 4 3 2 1 0
179