Bevezetés | 10 |
A mikroprocesszor-család architektúrája | 11 |
A 8088 CPU blokkdiagramja | 11 |
Regiszterek | 11 |
Tárcímzés szegmentálással | 12 |
Adatcímzési módok | 13 |
Az utasításkészlet fő csoportjai | 15 |
Adatátviteli utasítások | 15 |
Aritmetikai utasítások | 16 |
Logikai utasítások | 16 |
Karaktersorozat-kezelő utasítások | 18 |
Vezérlésátadó utasítások | 19 |
Processzorvezérlő utasítások | 22 |
Adattípusok | 23 |
Karakterkészlet | 23 |
Numerikus konstansok | 23 |
Egész számok | 23 |
Valós számok | 24 |
Kódolt valós számok | 24 |
Tömörített decimális számok | 24 |
Karakter- és karaktersorozat-konstansok | 25 |
Azonosítók | 25 |
Operandusok | 26 |
Konstans operandusok | 26 |
Direkt címmel elérhető operandusok | 26 |
Relatív címmel elérhető operandusok | 27 |
Számláló operandus | 27 |
Regiszter-operandusok | 27 |
Bázis-relatív operandusok | 28 |
Indexelt operandusok | 29 |
bázis-relatív indexelt operandusok | 29 |
Struktúra-operandusok | 30 |
Rekord-operandusok | 30 |
Rekordmező-operandusok | 30 |
Az operandusokból előállítható kifejezések | 31 |
Aritmetikai műveletek | 31 |
Léptető műveletek | 32 |
Logikai műveletek | 32 |
Indexelés | 32 |
A PTR művelet | 34 |
A címkiszámítás viszonyítási alapjának megváltoztatása | 34 |
A SHORT művelet | 35 |
A THIS művelet | 35 |
A HIGH és a LOW művelet | 36 |
A SEG művelet | 36 |
Az OFFSET művelet | 36 |
A TYPE művelet | 37 |
A LENGTH művelet | 38 |
A SIZE művelet | 39 |
A WIDTH művelet | 39 |
A MASK művelet | 39 |
A kifejezés értékének kiszámítása és precedencia | 40 |
A memória-operandusok típusának ellenőrzése | 40 |
A mikroprocesszor-család Assembly utasításai | 41 |
Az utasítások leírtásában használt rövidítések | 41 |
A 8086 és a 8088 utasításkészlete | 42 |
A 8087 utasításkészlete | 87 |
A 8087-es numerikus adatprocesszor felépíése | 87 |
A 80186 és a 80286 utasításkészlete | 93 |
A 80287 utasításkészlete | 95 |
Programozás makro-assembly nyelven | 96 |
A makró-assembly programok felépítése | 96 |
A makró-assembly utasítások általános alakja | 96 |
Az utasításkészlet beállító direktívák | 96 |
A forrás-modulok és az END direktíva | 97 |
A SEGMENT és az ENDS direktíva | 98 |
Az ORG direktíva | 99 |
Az EVEN direktíva | 99 |
A PROC és az ENDP direktíva | 100 |
A GROUP direktíva | 100 |
Az ASSUME direktíva | 101 |
A megjegyzések és a COMMENT direktíva | 101 |
Példák a makró-assembly programok felépítését meghatározó direktívák használatára | 102 |
Deklarációk | 103 |
Adatdeklarációk | 103 |
Címkedeklarációk | 108 |
Szimbólumdeklarációk | 108 |
Struktúrák deklarálása | 110 |
Rekordok deklarálása | 113 |
Előre-hivatkozások | 115 |
Globális deklarációk | 116 |
Makrók definiálása és híása | 119 |
A MACRO és az ENDM direktíva | 119 |
Makróhívások | 121 |
Részkaraktersorozat megadása makró-paraméterrel | 121 |
A szöveg-konstans jele | 123 |
A karakter-konstans jele | 123 |
A kifejezés jele | 123 |
A PURGE direktíva - makródefiníciók törlése | 124 |
A LOCAL direktíva - egyedi azonosítók létrehozása makrókban | 124 |
A REPT és az ENDM direktíva - utasításcsoport ismétlése | 125 |
Az IRPC és az ENDM direktíva - utasításcsoport ismétlése paraméterhelyettesítéssel | 126 |
Az EXITIM direktíva | 128 |
Makró-megjegyzések | 128 |
Feltételes fordítás | 129 |
A makró-assembler file-kezelésének vezérlése | 132 |
Az INCLUDE direktíva | 132 |
A TITLE direktíva | 133 |
A SUBTITLE direktíva | 133 |
A PAGE direktíva | 133 |
A LIST és a XLIST direktíva | 134 |
A LALL, a XALL és a SALL direktíva | 134 |
A SFCOND, a LFCOND és a TFCOND direktíva | 135 |
A RADIX direktíva | 135 |
A NAME direktíva | 136 |
A %OUT direktíva | 136 |
Magasszintű nyelvből hívott ASSEMBLY RUTINOK | 137 |
A MASM fordító használata | 138 |
Bevezetés | 138 |
Forrás file fordítása | 138 |
A MASM kapcsolói | 139 |
D, az első menet listája | 139 |
ML, kis-nagybetűk megkülönböztetése a lokális szimbólumokban | 139 |
MX, kis-nagybetűk megkülönböztetése a globális szimbólumokban | 139 |
X, a feltételes fordítások hamis ágának listázása | 140 |
R, kódképzés az aritmetikai processzor számára | 140 |
E, kódképzés a lebegőpontos emulátor számára | 140 |
A, szegmensek abc sorrendben | 140 |
A lista-file | 140 |
A forrássorok | 141 |
A makrótáblázat | 141 |
A struktúra-, rekordtáblázat | 141 |
A szegmens-, csoporttáblázat | 142 |
A szimbólumtáblázat | 142 |
Az első menet listája | 143 |
Programkönyvtár-kezelés a LIB segédprogrammal | 144 |
A programkönyvtár és kezelése | 144 |
A LIB funkciói | 144 |
A LIB hívása parancs-sorral | 146 |
A LIB használata párbeszédes módban | 146 |
LIB parancs-sorozat használata file-ból (válasz-file) | 148 |
Új könyvtár létrehozása | 149 |
A lapméret átállítása (PAGESIZE) | 149 |
A könyvtár konzisztenciájának ellenőrzése | 150 |
A keresztreferencia-lista és készítése | 150 |
Futtatható program előállítása - Programszerkesztés (LINK) | 151 |
A LINK indítása | 151 |
Programszerkesztés PC DOS parancs-sorral | 152 |
Programszerkesztés interaktív üzemmódban | 154 |
Programszerkesztés előre összeállított válasz-file-val | 154 |
Könyvtárak elérési útjainak megadása | 155 |
A map file szerkezete | 155 |
Ideiglenes lemez-file - VM.TMP | 156 |
A LINK opciói | 157 |
Megszakítás a szerkesztés alatt - PAUSE | 157 |
Puclic szimbólumok táblájának előállítása - MAP | 158 |
A verem-méret meghatározása - STACK | 158 |
A program helyigényének maximuma - CPARMAXALLOC | 158 |
A kezdőcím maximumra állítása - HIGH | 160 |
Helyfoglalás az adatcsoportnak - DSALLOCATE | 160 |
Forrás-sorok kezdőcímének kiírása - LINEUMBERS | 160 |
Kis- és nagybetűk megkülönböztetése - NOIGNORECASE | 160 |
A könyvtár alapfeltételezés törlése - NODEFAULTLIBRARYSEARCH | 161 |
Csoportok eltávolítása a programból - NOGROUPASSOCIATION | 116 |
Megszakítás overlayí esetén - OVERLAYINTERRUPT | 161 |
A szegmensek maximális számának meghatározása - SEGMENTS | 162 |
Az MS-DOS szegmens-elrendezés alkalmazása - DOSSEG | 162 |
A LINK működése | 162 |
A szegmensek címhatárra való igazítása | 163 |
A szegmensek kezdőcímének meghatározása | 163 |
A szegmensek átrendezése | 163 |
Kombinált szegmensek | 164 |
Szegmens-csoportok | 164 |
Címfeloldás | 164 |
A betöltés sorrendjének vezérlése | 165 |
Programok karbantartása a Make program segítségével | 167 |
Bevezetés | 167 |
A MAKE használata | 167 |
MAKE leíró file-ok létrehozása | 167 |
A MAKE furratása | 168 |
MAKE opciók | 168 |
Makró definíciók | 169 |
Példa a MAKE használatára | 169 |
Szimbólikus nyomkereső és hibakövető program (SYMDEB) | 170 |
Bevezetés | 170 |
A SYMDEB indítása | 170 |
Indítás program file-lal | 171 |
Indítás szimbólumokkal | 171 |
Paraméterátadás a betöltendő programnak | 171 |
Indítás file nélkül | 171 |
Szimbólum file készítése (MAPSYM) | 171 |
A kontroll karakter funkciója | 172 |
Parancs megszakítása | 172 |
Parancs felfüggesztése | 172 |
Az NMI használata | 172 |
A parancsok használata | 172 |
A parancsok általános felépítése | 172 |
Szimbólumok | 173 |
Számok | 173 |
Címek | 173 |
Cím-tartomány | 173 |
Sorszámok | 173 |
Karaktersorozatok | 174 |
Kifejezések | 174 |
A SYMDEB parancsai | 175 |
Az Assemble (fordítás) parancs | 175 |
A Break Point Set (töréspont megadása) parancs | 175 |
A Brekpoint Clear (töréspont törlése) parancs | 176 |
A Brekpoint Disable (töréspont kikapcsolása) parancs | 176 |
A Brekapoint Enable (töréspont bekapcsolása) parancs | 176 |
A Breakpoint List (töréspont kiírása) parancs | 176 |
A Display? (kifejezés értékének kiírása) parancs | 177 |
A Dump ASCII parancs | 177 |
A Dump Bytes parancs | 177 |
A Dump Words parancs | 177 |
A Dump Doublewords parancs | 177 |
A Dump Short Reals parancs | 177 |
A Dump Long Reals parancs | 177 |
A Dump Ten-Byte Reals parancs | 178 |
A Dump parancs | 178 |
Az Enter parancs | 178 |
Az eXamine Symbol Map parancs | 178 |
A Fill parancs | 178 |
A Go parancs | 178 |
A Help parancs | 179 |
A Hex parancs | 180 |
Az Input parancs | 180 |
A Load parancs | 180 |
A Move parancs | 181 |
A Name parancs | 181 |
Az Open Map XO parancs | 181 |
Az Output parancs | 181 |
A PTrace parancs | 181 |
A Quit parancs | 181 |
A Redirection parancs | 181 |
A Registers parancs | 182 |
A Search parancs | 182 |
A Set Source Mode parancs | 182 |
A Trace parancs | 183 |
Az Unassemble parancs | 183 |
A Write parancs | 183 |
Hibaüzenetek | 183 |
A SYMDER kompatibilis fordítók | 184 |
Kereszthivatkozási-lista készítő program (CREF) | 185 |
Bevezetés | 185 |
A ÍCREF használata | 185 |
A kereszthivatkozási-lista | 186 |
Hibaüzenetek | 186 |
Hibajelzések | 187 |
Az assembler hibaüzenetei | 187 |
assembler hibák | 187 |
I/O hibák | 192 |
A szerkesztő hibaüzenetei | 192 |