TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

16
RS245-2003-Lesing 11 1 TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4 HANDBOEK 5 Ou vraestel

description

TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel. "OOPBOEK" TOETS Vir hierdie vak beteken dit jy kan enige geskrif saambring. - PowerPoint PPT Presentation

Transcript of TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

Page 1: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 1

TOETS VOORBEREIDING

1 "OOPBOEK" TOETS2 WAT OM EERSTE TE LEER4 HANDBOEK5 Ou vraestel

Page 2: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 2

"OOPBOEK" TOETS

Vir hierdie vak beteken dit jy kan enige geskrif saambring.Geen elektroniese hulpmiddels behalwe sakrekenaars word toegelaat nie - dus geen hulpmiddels wat 8086 samesteller kode kan ontfout of uitvoer nie.

Daar word aanvaar dat u die volgende inligting by u het - inligting (soos poortadresse ens. wat nodig mag wees vir die beantwoording van die vraestel sal dus nie in die vraestel herhaal word as dit in een van die onderstaande bronne verskyn nie.):• Die voorgeskrewe handboek• Die inligting op die lesings se transparante• Die inligting wat met die praktika voorskrifte verskaf

is.

Page 3: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 3

WAT OM EERSTE TE LEER

1 Maak seker dat u al die transparante 100% verstaan.

2 Maak seker dat u al die praktika 100% verstaan.3 Maak seker dat u soveel moontlik van die 8086

instruksies 100% verstaan.4 Gebruik die boek om u met bostaande te help.

NB: 100% verstaan is belangrik - 'n vae idee van hoe dinge werk is fataal in hierdie vak. As u 1 en 2 hierbo 100% baasraak behoort u minstens maklik te kan slaag.

Page 4: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 4

DIE HANDBOEK

Hoofstuk 1

1.1 Die historiese agtergrond is vir u "opvoeding".1.2 Bevat ook hofsaaklik agtergrond inligting, maar beskryf ook

begrippe wat verder noodsaaklik is: "byte","word","doubleword", "bus".

1.3 Beskryf getallestelsels wat u moet ken: binêr, heksadesimaal, een- en twees-komplementêre getalle.

1.4 U moet die ASCII-tabel kan gebruik en packed BCD getalle kan gebruik. U moet verstaan dat die 8086 getalle in "little endian" formaat stoor.

Page 5: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 5

Hoofstuk 2

2.1 Beskryf die registers. U hoef slegs die 8086 registers en vlaggies te ken.

2.2 "Real mode addressing" Die begrippe "segment" en "offset" word beskryf. Tabel 2.2 wat die versuim ("default") register assosiasies beskryf, is fundamenteel.

2.3 Nie nodig nie.2.4 Nie nodig nie.

Page 6: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 6

Hoofstuk 3

3.1 Beskryf die verskillende adresseringsmodusse. Tabelle 3.1,3.2,3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.12 gee voorbeelde van elk. Ignoreer die nie-8086 registers soos eax,ebx,ecx, ens.

3.2 Op hierdie stadium voldoende om JMP te kan gebruik soos in lesings 3 en 8 beskryf.

3.3 Beskryf die Stapel. Die push, pop, pushf en popf instruksies en hoe die sp en ss registers werk is van belang.

Page 7: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 7

Hoofstuk 4

4.1 Dit is nie om te weet hoe die masjienkodes saamgestel word nie. Die MOD,REG en R/M bisse is nie vir ons van belang nie.U moet wel weet dat mov [bx],20H nie werk nie en dat die word of byte spesifiseerder benodig word:mov byte ptr [bx],20H of mov word ptr [bx],20H

4.2 Beskryf weer die werking van die stapel.

4.3 LEA, LDS en LES is soms handig om te gebruik.

4.4 LODSB, LODSW, STOSB ,STOSW, MOVSB, MOVSW, CLD en STD instruksies, die funksie van die D vlaggie, die REP voorvoegsel en gebruik van CX, en hoe DS,SI en ES en DI die adresse bepaal is van belang.

Page 8: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 8

Hoofstuk 4 (vevolg)

4.5 XCHG,LAHF,SAHF,XLAT,IN,OUT. Let op hoe XLAT gebruik word vir 'n opsoektabel en let op die gebruik van AX, AL en DX vir die IN en OUT instruksies (adresse >255 moet DX vir die adres gebruik). Geen segmentregister word vir IN en OUT gebruik nie.

4.6 Segment override. LW nie geldig vir string-instruksies nie.

4.7 Nie nodig nie - kyk na die tuts om te sienhoe:• Die "data" en "code" segmente gedefinieer word• db en dw gebruik word• .model gebruik word• byte ptr en word ptr

Page 9: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 9

Hoofstuk 5

5.1 ADD, INC, ADC, SUB, DEC, SBB, CMP.Tabelle 5.1, 5.2, 5.3, 5.4, 5.5,5.6, 5.7 gee voorbeelde van dieinstruksies.

5.2 MUL, IMUL, DIV, IDIV Let op hoe AL, AX en DX gebruik word.Tabelle 5.8, 5.9, 5.11 en 5.12 gee instruksie voorbeelde.

5.3 "BCD arthmetic" : DAA, DAS.Die "ASCII arithmetic" instruksies (AAA ens) is nie van belang nie.

.

Page 10: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 10

Hoofstuk 5 (vervolg)

5.4 AND, OR, XOR, TEST, NOT, NEGTabelle 5.14, 5.15, 5.16, 5.17, 5.19 gee voorbeeldeMaak seker dat verstaan hoe AND, OR, gebruik word om bisse na '0' of '1' te forseer en hoe TEST gebruik word om sekere bisse se waardes te toets.

5.5 SHL,SHR, SAL, SAR, ROL, RCL, ROR, RCR Tabel 5-20, 5-21 gee voorbeelde.Maak seker dat u verstaan waarom daar "arithmetic" (soosSAR) instruksies is vir getalle met tekens. (sien lesing 5).

5.6 SCASB, SCASW, CMPSB, CMPSWLet op die gebruik van REPE, REPNE.Let op dat die volgende registers/vlaggies van belang is:CX, ES, DI, AL, "Direction flag" (en DS en SI vir CMPS).Kyk hoe die vlaggies aan die einde vir jou sê wat die uitslag was.

Page 11: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 11

Hoofstuk 6

6.1 JMP Ons gebruik hoofsaaklik jmp label en 'n "jump table" soos in voorbeeld 6-4.(Kyk ook na "switch" voorbeeld in lesing 8)Voorwaardelike spronge. Tabel 6-1. Maak seker dat u seker is wat die verskil is tussen JA en JG ens.LOOP, LOOPE, LOOPNE. Let op die gebruik van CX en ook wat die verskil is tussen die drie instruksies.

6.2 Die samestellerekwivalente van IF, DO-WHILE, ens word hier behandel , maar dit is ook in lesing 8 gedoen.

6.3 CALL, RET N. Let op die verskil tussen CALLS binne dieselfde segment en CALLS na 'n ander segment.Ons gebruik hoofsaaklik call Label. In lesing 11, p10 is daar egter 'n voorbeeld van 'n "far" call waar beide CS en IP gelaai word en beide dus ook op die stapel ge-"push" word.Let op hoe wat die getal na RET beteken.

Page 12: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 12

Hoofstuk 6 (vervolg)

6.4 Basiese idee van 'n onderbreking word hier beskryf.

6.5 Nie nou nodig nie

Hoofstuk 7

7.1 Agtergrond: Betekenis van "public", "extern", "source file","object file", "linker"

7.2 Sleutelbord-tabel (tabel 7-3)Skryf na skerm met DOS en BIOS roepe

7.3 Data omsetting: Omsetting van ASCII na binêr .XLAT voorbeeld (vb 7-32)

7.4 Nie behandel nie.7.5 Voorbeelde vir agtergrond7.6 Fig 7.7 wys PC gonser aandrywing. Ons kyk later weer na

"interrupt hooks" - u moet egter weet hoe tut 4 werk!

Page 13: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 13

Hoofstuk 8 nie van toepassing op Watcom kompileerder nie

DOS Funksies : Bylae A (Slegs die funksies wat in die lesings en praktika gebruik is, is nou van belang - behalwe as eksplisiet gevra.)

BIOS Roepe : Bylae A (Slegs die roepe wat in die lesings en praktika gebruik is, is nou van belang - behalwe as eksplisiet gevra.)

Instruksiestel: Bylae B (Slegs die instruksies van toepassing op die 8086.)

Hoofstuk 99.1 Kyk na 8086 minimum modus penne9.2 8284 werking9.3 Fig 9.8 is 'n voorbeeld van 'n gebufferde 8086 stelsel9.4 Res van hoofstuk nog nie behandel nie

Page 14: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 14

Wat is die toestand van die “zero”, “carry”, “auxilliary carry”,“overflow” en “sign” vlaggies na die volgende drie instruksies uitgevoer is:What is the state of the “zero”, “carry”, “auxilliary carry”, “overflow” and“sign” flags after the following three instructions have been executed:

mov al,0C8Hmov bl,68Hadd al,bl

mov al,0C8H 1100 1000 (- 56)mov bl,68H 0110 1000 (+104)add al,bl 1)0011 0000 (+48)

zero=0carry=1auxilliary carry= 1

overflow=0sign=0

VRAE UIT SEPT 2000 VRAESTEL

Page 15: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 15

Aanvaar dat die registers die volgende data bevat:Assume that the registers contain the following data:ds = 2000Hes = 2010Hss = 2020Hsi = 0300HBepaal die waarde van bx, bp, di en cs sodat data vandieselfde fisiese adres in elk van die volgende gevalle in ah gelaai word.Determine the values of bx, bp, di and cs so that data from the same physical address is loaded into ah in each case.

mov ah,[si]mov ax,[bx] ; ax ! mov ah,[bp] mov ah,cs:[si][10]

mov ah,[di]

20000H+0300H=20300Hah<=20300H dus al<=202FFH dus bx=2FFHss:bp = 20300H dus bp = 100Hcs:si+10H = 20300H dus cs=1FFFHds:di = 20300H dus di=0300H

Page 16: TOETS VOORBEREIDING 1 "OOPBOEK" TOETS 2 WAT OM EERSTE TE LEER 4HANDBOEK 5Ou vraestel

RS245-2003-Lesing 11 16

Wat is die fout, indien enige in elk van die volgende:What is the error, if any, in each of the following:

(a) mov ds,1000H (b) pop ds(c) mov ax,[dx](d) shl al,3(e) mov [bx],[si](f) iret 2(g) mov [bx],20H (h) push ah(I) int 1FFH(j) out bx,ax

geen immediate mov na segmentregistersokdx kan nie vir 'n geheueadres gebruik word nieslegs 1 (of cl) geldiggeen mov van geheue na geheue toegelaat nieiret maak nie voorsiening vir bykomende pops niekort "byte ptr" of "word ptr"kan slegs 16 bis registers pushhoogste int is 0FFHout gebruik dx as adresregister