1 / 13

Krag-aan-herstel ("reset") en BIOS BIOS ROEPE BEDRYFSTELSEL ROEPE Voorbeeld

Krag-aan-herstel ("reset") en BIOS BIOS ROEPE BEDRYFSTELSEL ROEPE Voorbeeld. Krag-aan-herstel.

Download Presentation

Krag-aan-herstel ("reset") en BIOS BIOS ROEPE BEDRYFSTELSEL ROEPE Voorbeeld

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Krag-aan-herstel ("reset") en BIOS • BIOS ROEPE • BEDRYFSTELSEL ROEPE • Voorbeeld RS245-2003-Lesing 7

  2. Krag-aan-herstel Wanneer die 8086-mikroverwerker se toevoerspanning aangeskakel word word die CS-register outomaties op FFFFH en IP op 0000H gestel. Die 8086 gaan haal dus sy heel eerste instruksie by adres FFFF0H. Die stelsel moet dus 'n lees-alleen-geheue ("ROM" read-only-memory) by hierdie adres hê. Die ROM bevat 'n program wat in die geval van 'n persoonlike rekenaar onder andere na 'n bedryfstelsel op skyf gaan soek. Sodoende tel die rekenaar hom aan sy eie skoenrieme op - die sogenaamde "BOOTSTRAP" . RS245-2003-Lesing 7

  3. Die program in ROM bevat ook die BIOS-program van die rekenaar. BIOS = "Basic Input/Output System". Die BIOS voordien 'n aantal funksies waarmee met die sleutelbord, skerm, ens gekommunikeer kan word. VRAAG: Hoe weet programme wat die funksies wil gebruik wat die adresse van die funksies is? In die geval van die IBM-gedefinieerde persoonlike rekenaar is 'n aantal onderbrekings toegewys aan die BIOS. Die BIOS-program skryf die adres van die funksie in die onderbrekingstabel (vanaf adres 0 en verder - sien lesing 6) en die gebruiker roep die funksie deur 'n sagteware onderbreking. RS245-2003-Lesing 7

  4. Voorbeelde: [Kyk na tabel 6.5 in die handboek] Vertoon: INT 10H Sleutelbord: INT 16H Drukker: INT 17H Seriële poort: INT 14H Parameters word in die registers oorgedra. RS245-2003-Lesing 7

  5. Voorbeelde: Onderbreking 10H: Die "Video BIOS" Die video funksies word geroep deur INT 10H Parameters word vooraf in 'n aantal registers geplaas. Die AH-register bepaal basies watter video funksie uitgevoer gaan word: [Kyk na tabel A-5 in Appendix A] AH=02H : Stel loper "cursor" posisie AH=03H : Lees loper posisie AH=09H : skryf karakter en attribuut (kleur ens) AH=0AH : skryf karakter Bykomende inligting word in die ander registers geplaas. RS245-2003-Lesing 7

  6. Vertoon 'n karakters by huidige loper posisie (loper skuif nie aan nie) : MOV AH,0AH MOV BH,0 ;video bladsy nommer MOV AL, KARAKTER ;ascii kode van karakter MOV CX,AANTAL ;aantal karakters INT 10H ;Die vertoon onderbreking Vertoon 'n karakters/attribuut by huidige loper posisie (loper skuif nie aan nie) : MOV AH,09H MOV BH,0 ;video bladsy nommer MOV BL,ATTRIBUUT ;attribuut (volgende bladsy) MOV AL, KARAKTER ;ascii kode MOV CX,AANTAL ;aantal karakters INT 10H ;Die vertoon onderbreking RS245-2003-Lesing 7

  7. Die attribuut van elke karakter bepaal hoe die karakter vertoon word. Die attribuut is 'n 8-bis greep: I,R,G,B,I,R,G,B. I (heel links) bepaal die agtergrond intensiteit; I=1=helder Die volgende drie bisse R,G en B (rooi,goen,blou) bepaal die kleur van die agtergrond. 000=swart, 001=blou, 101=magenta ens. Die volgende vier bisse bepaal die helderheid en kleur van die karakter. RS245-2003-Lesing 7

  8. Lees 'n karakter van die sleutelbord: [Kyk tabel A-10] MOV AH,0 INT 16H ;BIOS plaas die karakter in AL RS245-2003-Lesing 7

  9. DOS - ROEPE [TABEL A-3 ] DOS-roepe werk soortgelyk aan BIOS-roepe. DOS se INT 21H is die belangrikste. INT 21H word vir die sogenaamde DOS-funksies gebruik. Ons sal enkele van die funksies in die praktika gebruik. Elke funksie het 'n nommer wat in die AH-register geplaas moet word. Soos in die geval van BIOS word verdere parameters in die ander registers aangegee. VOORBEELDE: Funksie 4CH Termineer 'n program: MOV AH,4CH INT 21H RS245-2003-Lesing 7

  10. Funksie 31H termineer 'n program maar vra vir DOS om dit in die geheue te hou - "terminate and stay resident". Dit skep die moontlikheid om programme te skryf wat in die geheue bly en in die agtergrond bly funksioneer. Die program word afgesluit met: MOV AH,31H ;Funksie 31H MOV DX,SIZE ;Lengte van program in grepe /16 +10H INT 21H Nota: Die +10H is om vir die PSP (program segment prefix) voorsiening te maak. RS245-2003-Lesing 7

  11. Funksie 25H skryf die adres van 'n prosedure in die onderbrekingstabel: DS:DX moet die adres van die prosedure bevat. MOV AH,25H MOV AL,Num ; int-nommer aan prosedure toegeken INT 21H Bepaal wat die program op die volgende bladsy gaan doen RS245-2003-Lesing 7

  12. callint_: ;Die funksie word geroep sonder enige parameters. push ax push bx push cx push dx ; mov dh,10 mov ah,2 mov bh,0 mov dl,0 int 10H ; mov ah,0 int 16H ; C-program #include <stdlib.h> extern void callint(); int main() { callint(); system("pause"); return 0; } RS245-2003-Lesing 7

  13. mov ah,09H mov bl,0A9H mov bh,0 mov cx,81 int 10H ; mov ah,2 mov bh,0 xor dx,dx int 10H ; pop dx pop cx pop bx pop ax retn 0 RS245-2003-Lesing 7

More Related