Programozás az összeszerelési nyelvben és a gép szervezése
2.4. Word formátum
Már tudjuk, hogy a csapat
Emlékezzünk vissza, hogy az oktális írás csak egy kényelmes módja a 16 bites PDP-11 állapotának reprezentálására. A jobb szélső oktális számjegy jelenti a három legjobboldalibb számot 0 2. A következő négy oktális számjegy képviseli a biteket szekvenciálisan 3-5, 6-8, 9-11 és 12 14. A képviselet hatodik és utolsó oktális számjegy A PDP-11 szó csak egy bitet hagy, így ez a szám lehet 0 vagy 1. Így a 0052 (az INC parancskód) valójában 10 bitet tartalmaz.
A szóformátumú képek kényelme érdekében meghatározzuk az oktális számok határait és a szó közepét.
A 6. módot index üzemmódnak nevezik; csapat
Ezt egy INC parancsnak (R1) kezelhetjük. De mivel a szó összes bitjét használták, erre sehol nincs információ. megfelel a MEM-nek. Az összeszerelő hivatkozni fog a MEM-re a program következő szavában. Tehát a PDP-11-ben
egy szerelési nyelv parancs több mint egy szót foglalhat.
005261 INC MEM (R1)
A regiszter tartalmának használata
akkor a WRD blokknak 2, 4, 1, 3-nak kell lennie, mivel a legkisebb adatelem a listán a második helyen van, és így tovább.
1. Kiválasztja a parancs első szavát a memóriából.
2. Növeli a PC-t.
4. Végrehajtja a forrásregiszter tartalmának automatikus növelését vagy csökkentését.
6. Automatikusan növeli vagy csökkenti a vevőkészülék tartalmának tartalmát.
2. Próbálja meg javítani a válogató programot a §2.3-ból.
E Nincs üzemeltető .END; amelyet a legtöbb szerelő bocsát ki
M Ugyanaz a címke többször használatos
U Meghatározatlan karakter
UPPAZHNENIYA. 1. Vegye figyelembe az ADD R1, - (R1) parancs végrehajtásának eredményét, figyelembe véve a 7. lépéssel kapcsolatos megjegyzést.
2. Határozza meg, hogyan érzékeli a rendszer az ilyen parancsokat.
022701 CMP (PC) +, R1
000100 .WORD 100
A második szó egyszerűen tartalmazza az O 100 operandust. Az első szóban a PC a parancsszámláló. A PDP-11-ben az utasításszámláló a felhasználó számára elérhető közös regiszterek egyike. Valójában ez a 7 regiszter, és ha az összeszerelő nem ismeri fel egy ilyen regiszter szokásos mnemóját, ami teljesen lehetséges, akkor a programnak tartalmaznia kell egy hozzárendelési operátort
Ugyanazt az eredményt lehet elérni, bár kevésbé hatékonyan, az alábbiak szerint: először az R0 kioldását. majd futtassa a parancsot
026001 CMP 100 (R0), R1
2. Az INC # 100 parancs végrehajtása után megkapja a 101-et?
3. Mi a szekvenciák végrehajtásának eredménye?
(a) INC (PC) (b) INC (PC) +
000100 005067 CLR MEM
000.376.000.000 MEM. WORD 0
Általános esetben az X egyenlőnek kell lennie
A szerelési nyelvek operátoraiban a negatív számok a szokásos módon jelennek meg a jel segítségével. Például,
Vegyük észre, hogy -2 (R1) jelentése a -2-es szám, amelyet az R1 tartalmával módosítunk (egyáltalán nem mínusz jelű tartalom). Ez egy kényelmes módja annak, hogy visszalépjen egy szóból az R1 által jelzett szóból. az R1 tartalmának megváltoztatása nélkül.
Természetesen negatív számok is beszerezhetők a számítások eredményeként. A PDP-11 szó negatív számának ábrázolása nem függ attól, hogy miként jelent meg ott. A 15. szó bit aláírt szám, és negatív számokra 1-re van állítva. Azonban, ahogy könnyedén, hogy róla (hogyan?), Az az elképzelés, mondjuk, 1 nagyon eltér a bemutató -1, nem csak nulla vagy egy, a mentesítés 15. A PDP-11 architektúra, hogy képviselje a negatív számok segítségével az úgynevezett kiegészítő bináris kód szám (vagy bináris hozzáadása). Ha X pozitív szám, akkor a -X kifejezés megjelenítéséhez szükségünk van:
Formázza az X ábrázolását; mivel X egy pozitív szám, a jelbit nulla, és a 0-14 bitek tartalmazzák az X bináris kódot.
Kivonás 1.
Cserélje ki az összes nullát a nullákkal és a nullákkal.
Az ilyen elrendezést figyelembe véve a PDP-11 szóban tárolható legnagyobb pozitív szám 0 a 15. bitben és 1 az összes többiben. Oktális ábrázolása 077777, a decimális értéke 2 15 -1 = 32 767.
Ne feledje, hogy a -1-et az összes számjegy tartalmazza: 177777, -2 177776, stb. Az alábbi értéktartományok állnak rendelkezésünkre:
Felhívjuk a figyelmet arra, hogy ha helyesen használjuk, -2-et írunk le, mint -1, stb.
Az ellentétes irányban közlekedő autós sebességmérővel való analógia kissé tisztázhatja ezen értékek táblázatát. Mindenesetre a nagyobb tudatosság hamarosan kevésbé titokzatos lesz.
UPPAZHNENIYA. 1. Hogyan adhatunk meg negatív számot az O 100000-nek a PDP 11 szó formájában?
2. Ismertesse a pozitív X-től kezdődően egy negatív szám oktális reprezentációs kódjának szisztematikus módszerét.
3. Mi a parancsok eredménye?
Mit gondolsz a fogásról?
4. Ha az R0-ban 7777 van, akkor mi az INCR0 parancs végrehajtása.
Programozás az összeszerelési nyelvben és a gép szervezése