DATASKOLEN Postboks 62 Nordengen Kokkedal. Programmering i maskinkode på AMIGA
|
|
- Malene Nørgaard
- 8 år siden
- Visninger:
Transkript
1 Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Indhold Interrupts Keyboard Interrupt Maskinkode VIII DATASKOLEN Postboks 62 Nordengen Kokkedal Telefon Postgiro
2 INTERRUPT I Vi begynder dette kapitel med at forklare rent generelt hvad INTERRUPT (oversat: AFBRUD) er. Vi vil benytte betegnelsen INTERRUPT fordi det er den, som bruges mest af programmører. Hvis muligheden for INTERRUPTs ikke fandtes i datamaskiner, ville det give os et problem, som i overfart betydning ville udarte sig sådan: Du sidder og venter på at telefonen skal ringe, men da ringefunktionen i telefonen ikke virker, kan du ikke høre hvis den ringer. Du skal altså løfte røret hele tiden og sige "hallo?" - og, hvis ingen svarer, så lægge på igen. Måske sidder du ovenikøbet og læser et eller andet - eller gennemgår dagens post på kontoret. Den manglende ringefunktion vil resultere i, at du ikke får læst mere end nogle få sætninger, for du atter må løfte roret af telefonen for at checke om nogen ringer. Hvis du dertil har flere telefoner, og må løfte rørene af konstant, får du ikke læst ret meget. - ret irriterende, ikke? Et eksempel på INTERRUPTs i en datamaskine kan f.eks være aflæsningen af tastaturet. Hvis vi ikke kunne benytte os af INTERRUPTs, måtte vi checke tastaturet hele tiden for at være sikker på at datamaskinen fik alle vores anslag med. Men fordi der er en INTERRUPT-funktion, behøver programmet ikke at checke tastaturet i det hele taget. Indlæsningen bliver udfort automatisk af en såkaldt INTERRUPT-RUTINE. Denne rutine vil blive udført så snart der trykkes en tast ned på tastaturet. I dette tilfælde er det almindeligt, rutinen lægger tegnet ind i en KEYBOARD-BUFFER - det vil sige at datamaskinen opsamler tegnene, som du indtaster i et lille område i hukommelsen, som den har sat af til den slags. Hvis for eksempel et program er igang med at hente data fra en diskette, kan det altså afslutte diskoperationen for det henter eventuelle tastetryk, som du har lavet i mellemtiden - og som altså ligger lagret i KEYBOARD-BUFFERen. Dette burde være en god indledning til begrebet INTERRUPT. I næste kapitel går vi videre med hvordan INTERRUPTs virker på din yndlings-maskine: AMIGA.
3 INTERRUPT II I AMIGA'en findes der 7 forskellige INTERRUPTs. De er nummereret fra 1 til 7. Det syvende INTERRUPT kan ikke slås fra (og derved forhindres udført), og kaldes derfor NONMASKABLE INTERRUPT. De Øvrige INTERRUPTs kan du slå fra, hvis du vil. Så hvis du vil bede maskinen om at sla et INTERRUPT fra, f.eks det som aflæser tastaturet, så er det muligt. Hvert INTERRUPT i AMIGA'en har en bestemt PRIORITET (eller "forkørselsret"). Lad os se lidt nærmere på netop dette: INTERRUPT FUNKTION I AMIGA Eksternt (udvendigt) INTERRUPT Eksternt INTERRUPT Disk Seriel port Lyd Blitter Vertikal-blank Copper IND/UD porte og TIMERS Benyttes som SOFTWARE-INTERRUPT Disk Serieport INTERRUPT 7 kan du se helt bort fra. Dette fordi at der i skrivende stund ikke findes noget udstyr, som benytter sig at dette INTERRUPT. Vi koncentrerer os derfor om INTERRUPTene som er nummereret fra 1 til 6. INTERRUPTene er inddelt i PRIORITETer, hvor INTERRUPT 7 har hajeste PRIORITET, og INTERRUPT 1 har laveste PRIORITET. Dette virker saledes, at imens INTERRUPT 3 udfores, kan et INTERRUPT med lavere eller samme PRIORITET ikke afbryde det som foregår. Derimod kan INTERRUPTs med høj PRIORITET afbryde et med lavere prioritet for at udføre sin egen rutine først, for derefter at lade den INTERRUPT-RUTINE med lavere PRIORITET (som blev afbrudt) gøre sig færdig. Det er konstrueret sådan, fordi enkelte enheder (disk, BLITTER, COPPER, osv.) kan have brug for lidt hurtigere opmærksomhed end andre enheder. Læg også mærke til at f.eks INTERRUPT 3 i tabellen har flere funktioner. Dette medfører at INTERRUPT-RUTIENEN skal checke hvilken enhed som genererede INTERRUPTet - på godt dansk: Bad om opmærksomhed - for at få at vide hvad INTERRUPT-RUTINEN skulle udfore. Mere om dette senere.
4 Lad os nu gå et skridt videre og fortælle om, hvordan forskellige INTERRUPTs "opstår": INTERRUPT 6: Dette INTERRUPT er, ligesom INTERRUPT 7, også koblet til eksterne enheder. Det betyder at INTERRUPTet ikke bliver brugt, hvis du ikke har harddisk e.l. INTERRUPT 5 (DISK): Dette INTERRUPT bliver genereret (eller aktiveret) når et såkaldt DISK SYNC WORD er fundet på disketten. Vi kan forklare dette i al enkelhed: Dataene på en diskette bliver lagret i ringe pa disketten - pa såkaldte spor. For at AMIGAen skal vide, hvor begyndelsen på ringen befinder sig, er der lagret en speciel kombination af enere og nuller (16 BITs) på dette sted. Når AMIGAen finder denne kombination på diskette, vil den hoppe til INTERRUPT-rutinen, som starter DISK-DMA'en for at begynde indlæsningen af data. Dette skal gå hurtigt, og derfor har denne funktion fået en høj PRIORITET. INTERUPT 5 (Seriel port): Dette INTERRUPT bliver aktiveret når BUFFEREN til seriel-porten er fuld. Serieporten er et INTERFACE (dansk: mellemled), som kan sende eller modtage data fra andre enheder som. f.eks MIDI, et MODEM, en anden datamaskine - eller lignende. Det specielle ved seriel-overforing er, at der bliver overfort en BIT ad gangen. Nar serieporten har modtaget 8 BITs (en BYTE) skal et BUFFER-register tommes umiddelbart for næste BIT kommer ind, så det ikke "lober over", - det som kaldes OVERFLOW. Altså: når BUFFER-registret er fuldt, vil dette INTERRUPT genereres (aktiveres) og der hoppes til en INTERRUPTrutine, som lægger værdien over i BUFFER-registret et sted i RAM, hvor det kan ligge trygt. Som du ser skal også denne funktion have en høj PRIORITET for at være sikker på, at dataene på serieporten bliver modtaget korrekt. INTERRUPT 4: Dette INTERRUPT genereres når en lydkanal er færdig med at afspille en SAMPLE. Dette betyder, at vi kan lade INTERRUPT-rutinen slukke for AUDIO-DMA'en så SAMPLEn kun bliver spillet en gang, istedet for at lade SAMPLEn blive spillet om og om igen ukontrolleret. Læg mærke til at alle fire lydkanaler er "koblet" på dette INTERRUPT, således at du skal finde ud af hvilken lydkanal, der er kommet til afslutningen af SAMPLEn. INTERRUPT 3 (BLITTER): Dette INTERRUPT bliver genereret når en BLITTER-operation er færdig med et job. I vores programeksempler bruges disse (nu velkendte) linier for at checke dette: wait : BTST BNE #6, SDFF002 wait Den anden metode er at lave en INTERRUPT-rutine, som f.eks opsætter og starter næste BLIT selv. Som du ser har dette INTERRUPT ikke så haj PRIORITET. Dette kommer sig af, at denne operation ikke behover en så hurtig
5 opmærksomhed (eller behandling) som f.eks den serielle port i INTERRUPT 5. INTERRUPT 3 (vertikal-blank): Dette INTERRUPT genereres hver gang elektronstrålen hopper op til linie 0. Altså, dette INTERRUPT udfares hver gang skærmen opdateres. Det har ingen speciel funktion i sig selv, men INTERRUPT-rutinen kan.eks opdatere positionen til WORKBENCH-pilen og andre ting, som skal udføres for hver skærmopdatering. Vi kunne for eksempel lave en INTERRUPT-rutine, som opdaterer en SCROLL-tekst. Da ville hovedprogrammet se således ud: main: BTST BNE #6, BFE001 main i stedet for.... main : MOVE. L ASR. L ANDI. L CMP. W BNE BSR BTST BNE $DFF004, DO #8,DO #$lff, DO #O,DO main scroll #6, SBFE001 main INTERRUPT 3 (COPPER): Dette INTERRUPT kan genereres af COP- PERen. Du kan for eksempel lade COPPERen vente på linie 200, og derefter generere et INTERRUPT. I praksis benyttes dette INTERRUPT i samme tilfælde som INTERRUPTet ovenfor (vertikalblank), men med den forskel at du selv kan bestemme ved hvilken skærmposition INTERRUPTet skal startes (altså, ikke fast p& linie O som vertikal-blank INTERRUPTet er). Du kan også foretage flere INTERRUPTs for hver skærmopdatering, hvis du Ønsker det. INTERRUPT 2: Dette INTERRUPT genereres af en IND/UD-enhed, som styrer parallelporten, mustasten, nogle af diskfunktionerne, osv. Vi kommer tilbage med forklaring af dette INTERRUPT i BREV 11, når vi skal gennemgå denne IND/UD-enhed. INTERRUPT 1 (SOFTWARE): Dette INTERRUPT er lidt specielt. Det bliver nemlig styret fra selve programmet som køres. Som du sikkert forstår, har dette INTERRUPT ikke nogen speciel funktion, men vi kan nævne en funktion, det bliver benyttet til - nemlig MULTITASKING. Dette betyder - som du måske allerede ved - at to eller flere opgaver (programmer) kan køres Samtidig. Dette er ikke helt sandt, fordi det som egentlig sker er, at processoren skifter imellem at køre (udfore) programmerne hele tiden.
6 Eller: når et program er blevet udført et lille stykke tid (tiden kan variere), så vil programmet selv genere dette INTERRUPT. INTERRUPT-rutinen sørger så for at der hoppes til næste program. Således vil denne INTERRUPT-rutine fordele "processor-kraften" p3 de forskellige programmer. INTERRUPT 1 (DISK): Dette INTERRUPT genereres når DISK-DMA'en er færdig med at indlæse data fra en diskette. Denne INTERRUPTrutine kan for eksempel flytte på læse/skrivehovedet for at kunne starte op p& en ny indlæsning. Det har en væsentlig lavere PRIORITET end disk-funktionen i INTERRUPT 5. Det er lavet således fordi denne funktion ikke behover en så hurtig behandling. INTERRUPT 1 (SERIEL PORT): Dette INTERRUPT bliver genereret nar BUFFERen til den serielle port er tom. Altså: Når maskinen har sendt 8 BITs (læg mærke til at seriel-porten kan sættes op til at sende/modtage 9 BITs ad gangen og&), udføres en INTERUPT-rutine, som kan indlægge næste BYTE, som skal sendes ud p& serieporten. Vi har nu gennemgaet funktionerne for de enkelte INTERRUPTs i AMIGA. I det følgende kapitel skal vi se på, hvordan man blandt andet laver sin egen INTERRUPT-rutine. INTERRUPT III Vi starter dette kapitel med en tabel over indholdet i hukommelses-adresserne $ $0003FF. ADRESSE BESKRIVELSE $ ikke benyttet Reset, SSP Reset, PC BUS ERROR ADRESS ERROR ILLEGAL INSTRUCTION DIVISION BY ZERO CHK INSTRUCTION TRAPV INSTRUCTION PRIVILEGE VIOLATION TRACE EXCEPTION UNIMPLEMENTED INSTRUCTION (1010) UNIMPLEMENTED INSTRUCTION (1111)
7 SPURIOUS INTTERUPT INTERRUPT 1 AUTO-VECTOR INTERRUPT 2 AUTO-VECTOR INTERRUPT 3 AUTO-VECTOR INTERRUPT 4 AUTO-VECTOR INTERRUPT 5 AUTO-VECTOR INTERRUPT 6 AUTO-VECTOR INTERRUPT 7 AUTO-VECTOR SOOOOCO Ikke benyttet $ ~ ~ ~ USER l INTERRUPT ~ ~ VECTOR USER INTERRUPT VECTOR Vi koncentrerer os om adresserne $64 til $7C. Disse hukommelses-områder indeholder pointere (VECTORer) til de forskellige programrutiner, som udføres når en INTERRUPT bliver udfart. Altsa: Når processoren (MC68000) får et signal af typen INTER- RUPT 1, vil den hente værdien, som ligger på adresse $64 (LONGWORD), og derefter behandle denne værdi som en adresse, som den skal hoppe til. Processoren gør ogsa et par andre ting Ør den hopper til INTERRUPT-rutinen. Det første den gør, er at flytte værdien, som ligger i programtælleren (PC) på STACKen. Derefter lægger den STATUS-registret på STACKen, og til sidst hopper den til INTERRUPT-rutinen. Altså: Den skal lagre programtælleren således at den ved, hvor den fortsætte nar INTERRUPT-rutinen er udført (dette foregår p& samme måde som med BSR). Derefter skal STATUS-registret (registret som indeholder b1.a ZERO-flaget, CARRY-flaget, osv), lagres.
8 Vi belyser det nærmere med et eksempel: CMP. W BEQ #25, DO loop Som vi allerede ved, kan et INTERRUPT ske nar som helst, helt ufhængig af andre programmer. Forstil dig at et INTERRUPT skete mellem to instruktioner i eksemplet ovenfor. Hvis DO f-eks var 25 ville denne CMP-instruktion sætte ZERO-flaget til 1. Når INTERRUPTet så bliver udført far BSR-instruktionen, kan ZEROflaget have fået en anden værdi (på grund af INTERRUPT-rutinen) Ør processoren hopper tilbage for at gå løs på BEQ-instruktionen. Dette kan medfore at BEQ-instruktionen vil hoppe "forkert" enkelte gange. Derfor er det nødvendigt at processoren også lagrer STATUS-registret. Alt dette går automatisk, således at du ikke ikke behover at tænke over dette når du programmerer en INTERRUPT-rutine. Derimod findes der en anden ting du skal tænke på, nemlig dataregistrene og adresseregistrene. Disse bliver nemlig ikke lagret automatisk under et INTERRUPT. Derfor skal det første, du gør i en INTERRUPT-rutine være at lagre de registre, du skal bruge, på STACKen. hvis du f.eks skal bruge dataregistrene DO til D3 og adresseregistrene A0 til Al i rutinen, kan en sådan instruktion for at lagre disse registre på STACKen se således ud (se i maskinkodekapitlet, hvor vi forklarer denne variant af MOVE ): M0VEM.L DO-D3/AO-Al,-(A7) Nar INTERRUPT-rutinen er gennemfort, lægger du til sidst folgende instruktion ind for at få værdierne tilbage i registrene. Instruktionen som benyttes til at afslutte en rutine er sædvanligvis en RTS. Men hvad gør denne RTS-instruktion egentlig? Jo, den henter en værdi fra STACKen (et LONGWORD), og bruger denne værdi til at hoppe tilbage til, der den kom fra. Men, vi sagde jo, at når et INTERRUPT opstår, lagres ikke kun programtælleren (PC), men ogsa STATUSREGISTRET. Derfor kan vi ikke benytte RTS for at afslutte en INTERRUPT-rutine. Derimod bruger vi en instruktion som hedder RTE. Denne instruktion vil også sørge for STATUS-registret. Derfor vil strukturen på en INTERRUPTrutine se således ud: interrupt: M0VEM.L DO-D7/AO-~6,-/~7) M0VEM.L RTE (A~)+,DO-D~/AO-A~
9 Vi gennemgår nu programeksempel MC0901, som ligger på kursusdisketten DISK 1. Linie 1: Linie 2: Linie 4: Linie 6: Linie 7: Linie 8: Linie 9: Linie 11: Linie 12: Linie 14: Lægger adressen på "jump" ind i Al. Læg mærke til at LABELen "jump" peger på en instruktion (programlinie 42 ). Lægger værdien, som ligger på adresse $68, ind på adressen som A1+2 peger på. Denne MOVE flytter altså en værdi ind i selve instruktionen på programlinie 42: FØrst henter vi værdien ud, som ligger p& adresse $68. Denne adresse indeholder pointeren (VECTORen) til INTERRUPT 2. Denne værdi lægges s& ind i JMP-instruktionen p& programlinie 42. JMP-instruktionen udforer et hop i lighed med BRA. Forskellen på disse to er, at BRA hopper med en OFFSET fra selve instruktionen, mens JMP hopper direkte til en opgivet adresse (fast adresse, se også maskinkodekapitlet senere i brevet). Som du ser på linie 42, hopper denne JMP-instruktion til adresse $0. Når vi har udfort denne MOVE, vil JMPinstruktionen have fået ny adresse - nemlig adressen på den gamle INTERRUPT-rutine. Lægger værdien 100 i DO. Lægger værdien 1 i Dl. Bytter om på WORDene i Dl. Dette resulterer i at D1 indeholder $ Lægger værdien fra adresse $4 ind i A6. Dette er en ny instruktion. JSR betyder JUMP to SUB RUTINE, eller hop til under-rutine (se også i maskinkode-kapitlet). I BREV X kommer vi næremere ind på JSR-kommandoer. I al enkelthed udfører programlinierne 4 til 9 en HUKOMMELSES-ALLOKATION på 100 BYTEs. Det vil sige, at vi beder operativsystemet om at sætte 100 BYTEs hukommelse af til os. På den måde fås et sted i hukommelsen, hvor INTERRUPTrutinen kan ligge sikkert. Tænk ikke så meget over det lige nu - det er vigtigere at forstå, hvordan INTERRUPT-rutinen virker, end at vide, hvor i hukommelsen den lægges. Lægger værdien fra DO ind i Al. Den rutine (HU- KOMMELSES-ALLOKATION) som blev udført af programlinie 9, returnerer en adresse fra DO, som peger på den første BYTE i den 100 BYTEs store "blok" som blev ALLOKERET (afsat). Lægger værdien i DO ind i D7. Lægger adressen på "interrupt" ind i AO.
10 Linie 15: Linie 18: Linie 19: Linie 21: Linie 22: Linie 23: Linie 25: Linie 27: Linie 28: Linie 29: Linie 30: Linie 31: Linie 33: Lægger 24 ind i DO. Den bruges som en tæller. Lægger værdien, som A0 peger på, ind på adressen, som Al peger på. Derefter adderes værdien 4 til værdierne i bade A0 og Al (HUSK! LONGWORD). Trækker værdien 1 fra DO og checker om DO er -1. Hvis ikke hoppes der tilbage til "copyloop". På den måde kopieres rutinen "interrupt" (programlinie 28 til 42) ind i den "blok" med hukommelse, som vi ALLOKEREDE tidligere. Slukker alle INTERRUPTs. Lægger værdien som ligger i D7 ind på adresse $68. Altså: Adressen på hukommelses-blokken, som vi ALLOKEREDE, bliver lagt ind i pointeren til INTER- RUPT 2. Læg mærke til at vi på forrige linie slukkede alle INTERRUPTs. Dette skal gøres Ør man kan lægge en ny værdi ind i INTERRUPT-pointerne. Tænder alle INTERRUPTs igen. Nu udføres INTERRUPTrutinen nar der kommer et signal til INTERRUPT 2. Når vor INTERRUPT-rutine er udfart, vil den ikke returnere til hovedprogrammet - men ved hjælp af JMP-instruktionen på linie 42 - hoppe til den gamle INTERRUPT-rutine (som tilhorer operativsystemet). Dette gør vi for at holde operativsystemet intakt. Vi har altsa bare "sneget" vores egen INTERRUPTrutine ind for operativsystemets egen INTERRUPTrutine. Dette kaldes for at LINKe en rutine ind (som kan oversættes med at "koble sig ind på). Afslutter programmet (OBS! INTERRUPT-rutinen afsluttes ikke). Her ligger INTERRUPT-rutinen. Lagrer værdien i DO på STACKen. Vi behøver ikke en MOVEM-instruktion her, fordi vi kun behover at lagre et register. MOVEM bruges kun når vi vil lagre flere registre ad gangen. Lægger værdien som ligger på adresse SBFECOl ind i DO. Denne adresse indeholder koderne, som sendes fra tastaturet når der trykkes på en tast. Vi vil komme nærmere ind på dette register i BREV XI. Inverterer DO. Roterer DO BIT-vis en gang til højre. Se forklaring på denne instruktion i maskinkode-kapitlet. Sammenlign DO med 59.
11 Linie 34: Linie 36: Linie 39: Linie 42: Hvis DO ikke var 59, hop til "wrongkey". Altså: Programlinierne 29 til 34 aflæser tastaturet og checker om en speciel tast er blevet trykket ned. Denne instruktion betyder BIT CHANGE. Den inverterer BIT 1 på adresse SBFE001. BIT 1 på denne adresse styrer "P0WER"-lampen som hhv tændt og slukket. Denne instruktion vil alt& resultere i at hver gang den bliver udført, vil den tænde eller slukke lampen. Denne instruktion er også forklaret i maskinkode-kapitlet. Henter det gamle indhold i DO ud fra STACKen. Hopper til den gamle INTERRUPT-rutine. For at køre dette program, skal du som sædvanlig assemble det. Derefter behøver du bare kommandoen "j" for at starte det. Når du har kørt programmet, kan du prøve at trykke på tasten "F10" og samtidig se på "POWERW-lampen. Med dette afslutter vi kapitlerne om INTERRUPTs. Vi kan nævne at i BREV XII kommer nogle lidt mere komplicerede INTERRUPTrutiner (for MIDI) som vil tage sig af automatisk afsendelse og modtagelse p& SERIEL-porten. MASKINKODE VIII I dette kapitel gennmgår vi folgende instruktioner: MOVEM, JMP, JSR,.BCHG, RTE, ROR og ROL. Lad os starte med instruktionen MOVEM. Det ekstra bogstav "M" i denne instruktion betyder MULTIPLE. (kan oversættes med "flere"). Altsa: Denne MOVE flytter flere ting ad gangen og benyttes ofte til at lagre og hente fra STACKen: Denne ene programsætning....,.udfører det samme som disse 3 linier: MOVE L DO,-(A7) MOVE L Dl, -(A7) MOVE. L D2, -(A7) Et eksempel til... MOVEM. L ( A7 ) +, Dl/AO-A4
12 Det første eksempel lagrer dataregistrene DO, D1 og D2 på STACKen. Det andet eksempel - som udfarer det samme som det første - tager både mere plads og tager længere tid. Det tredie eksempel henter Dl, AO, Al, A2, A3 og A4 ud fra STACKen. Du kan også bruge andre registre end A7 til at lagre og hente data. På denne måde kan du lave din egen STACK. Et sådant program kan f.eks se således ud: LEA. L mystack,ao mystack: BLK.B 100, O Den næste instruktion vi skal se på er JMP. Denne instruktion betyder JUMP, og oversættes til: hop. Forskellen på denne instruktion og BRA, er at BRA-instruktion hopper relativt (den hopper i forhold (OFFSET) til, hvor programtælleren peger). JMP-instruktionen fungerer ikke på samme måde: Lad os vise det med et eksempel: JMP SFCOOD2 Den hopper altid til en fast adresse. Altså, BRA-instruktionen bruges oftest når der skal hoppes indenfor samme program, mens JMP mest bruges for at hoppe udenfor programmet (til et andet program ). Næste instruktion p6 listen er JSR. JSR betyder JUMP TO SUB RUTINE, og kan oversættes til: hop til under-rutine. Indtil nu har vi kun brugt BSR-instruktionen fordi vi kun har hoppet til under-rutiner, som ligger indenfor vort eget program. Hvis vi vil udføre et hop til en under-rutine, som ligger udenfor programmet bruger vi altså JSR. Udover at kunne hoppe til en fast adresse som JMP-instruktionen kan, kan JSR indirekte hoppe med et adresseregister. Der kan også specificeres en OFFSET i tillæg til dette. Her kommer nogle eksempler: JSR $5000 og et eksempel på et indirekte hop... JSR JSR (AO) 20(AO) Det første eksempel udfarer et hop til adresse $5000.
13 I det andet eksempel bruges værdien, som ligger på adressen som A0 peger på som hop-adresse. Altså: Hvis A0 indeholder $ og der p& adresse $10000 ligger værdien $50000, vil der blive hoppet til adresse $ I det sidste eksempel vil der blive hoppet til den adresse, som ligger på adresse A Med andre ord; Den henter værdien som ligger pi3 adresse $ = $10014, og bruger denne værdi som hop-adresse. Næste instruktion hedder BCHG, og betyder BIT CHANGE. Denne instruktion bruges til at invertere en speciel BIT p& en adresse eller i et register. Her kommer nogle eksempler: BCHG #3,DO... og DO bliver: Vi udforer samme instruktion en gang til... BCHG #3,DO... og DO bliver igen: Denne instruktion burde være indlysende. Den næste instruktion har vi forklaret en del om i forklaringen til programeksempel MC0901, nemlig RTE. RTE betyder RETURN FROM EXCEPTION. Vi skal ikke rode dig ud i for meget med at prøve at forklare, hvad EXCEPTION er i dette brev, men indskrænker os til at forklare, hvordan instruktion fungerer. I lighed med RTS-instruktionen fungerer denne også som afslutning af en rutine. Forskellen er, at vi bruger RTE for at afslutte en INTERRUPT-rutine. Den tekniske forskel er at RTS-instruktionen kun henter den gamle program-tæller ud fra STACKen, mens RTEinstruktionen derudover henter den gamle værdi, som var i STATUS-registret. De to sidste instruktioner vi skal forklare er ROR og ROL. De betyder henholdsvis ROTATE RIGHT og ROTATE LEFT, og oversættes med: roter til højre og roter til venstre. Disse instruktioner er meget lig med LSR og LSL. Den eneste forskel er, at den BIT som bliver roteret ud i den ene ende, kommer ind igen i den anden ende af BIT-gruppen.
14 Lad os atter vise nogle eksempler: Vi prøver denne... ROR. B #3, DO... og DO bliver nu sådan: Vi tager en til: efter at følgende er udfort bliver DO sådan: Det kan også nævnes, at når du opgiver antal skift som en konstant (sådan som i eksemplerne ovenfor), er 8 den hajeste værdi som er lovlig. Hvis du skal rotere f-eks 13 BITS, kan du enten bruge to instruktioner, eller benytte dig af følgende metode: MOVEQ R0L.L #13, D1 Dl, Do Vi håber det var til at forstå - ellers prøv en gang til.
15 LØSNINGER TIL OPGAVER I BREV XIII Opqave 0801: Opqave 0802: AMPLITUDE er højden (styrken) p6 en lydbølge. SAMPLING er i dataverdenen en lydbølge (bølgeform), som repræsenteres (opbevares) DIGITALT. Opqave 0803: En A/D-CONVERTER er en elektronisk opkobling, som laver et ANALOGT signal om til et DIGITALT (BINÆRT) signal. Opqave 0804: Resultatet i D1 bliver: 225 ($000000E1) OPGAVER TIL BREV IX Opqave 0901: Opqave 0902: Opqave 0903: Opqave 0904: Hvad er fordelen ved at benytte sig af INTER- RUPTs? Hvad kaldes INTERRUPT 7 ofte på AMIGA? Hvad udfører BCHG-instruktionen? Hvad vi D1 indeholde efter at disse instruktioner er udført (prøv uden K-SEKA): MOVE. L ROR. L ROL. W ROR. B #$64E918AB,Dl #3,D1 #l, Dl #5, D1
16 LILLE DATAORDBOG AMPLITUDE SAMPLE Amplitude er højden på f.eks en 1ydbØlge. En SAMPLE i forbindelse med lyd er lydbqlgedata, som er lagret DIGITALT. En A/D-CONVERTER er en elektronisk opkobling som ændrer (konverterer) et ANALOGT signal til et DIGITALT (BINÆRT) signal. DIGITAL ANALOG MIDI INTERRUPT I/O NONMASKABLE PRIORITET VECTOR DIGITALT er en betegnelse for et signal som kan være enten O eller 1 (tændt eller slukket). Et ANALOGT signal er et signal som kan have uendelig mange værdier. MIDI er en forkortelse for MUSICAL INSTRUMENT DIGITAL INTERFACE som kan oversættes til "DIGI- TALT MELLEMLED MELLEM MUSIKINSTRUMENTER". Dette system bliver brugt til f.eks at lade et instrument styre et andet. MIDI er mest udbredt på tangent-instrumenter (elektriske pianoer, SYNTHESIZERs, orgler osv.) Ordet INTERRUPT betyder: AFBRYD, og er en Funktion, som ligger i HARDWARE. Benyttes til håndtering af I/O-enheder. IN/OUT enheder i computeren, der modtager/sender data IND/UD (f.eks en disk) Dette ord bliver brugt sammen med INTERRUPT. Et NONMASKABLE INTERRUPT er et INTERRUPT, som ikke kan kobles ud (forhindres). Ordet PRIORITET kan oversættes med "fortrinsstilling". Dette bliver ofte brugt sammen med INTERRUPTs. Et INTERRUPT med højere PRIORITET anses for at være vigtigere end et med lavere PRIORITET. VECTOR kan i data-sammenhæng oversættes til "pointer". Det er ofte en adresse på en underrutine eller en data-tabel.
17 KOMMENTARER TIL BREV IX Nu når du er færdig med dette brev, har du været igennem 3/4 af kurset i AMIGA MC. VI antager at du er kommet så langt at du nu kan udfore en hel del avancerede ting i ren maskinkode på din yndlings-maskine. I dette brev har vi gennemgået INTERRUPTs. Efterhånden som du kommer til at bruge denne funktion, når du programmerer, vil du erfare, at det er en meget følsom funktion. Det sker derfor let at det går galt, hvis du ikke passer p& (GURU MEDITATION!) Det gælder altså om at holde operativsystemet i AMIGA intakt. SØrg derfor, for at du har en back-up før du prøver om det virker. Glem ikke at DEBUGGE (fjerne fejl) dit program mens du programmerer. Det er næsten umuligt at finde fejlene igen - og stedet hvor de opstod - når dit program er blevet så stort, at det dækker flere A4-sider i ulistet form. SØrg også for at du lader din kildekode (SOURCE CODE) indeholde rigelig med kommentarer, saledes at du til enhver tid ved hvad de forskellige rutiner udforer. Brug kommentarer som er lette at forstå. Det kan være vanskeligt at huske om korte ord som "sprcol" skal betyde SPRITE-COLLISION (eller var det SPRITE- COLOR?) når du vender tilbage til dette sted i dit program efter at have programmeret andre dele af programmet. Det er også vigtigt at du holder en jævn programmeringshastighed i din programmering. Med andre ord: SMED MENS JERNET ER VARMT. Det er lettere at skrive overskuelige programmer på denne måde, samtidig som de bliver enklere at DEBUGGE. I næste BREV - BREV X - kommer vi ind på et helt nyt område, nemlig AMIGA's operativsystem, hukommelses-allokeringer, læsning/skrivning af filer til disk og læsning/skrivning til CLI-vinduet. Det er de (for programmarer) vigtigste og mest brugte system-funktioner. I praksis viser det sig, at man sjældent får behov for flere systemfunktioner end dem vi har nævnt her. Og netop derfor er det vigtigt at kunne. Desuden vil du - efter at du har læst BREV X - lettere forstå hvordan andre systemfunktioner virker, når (eller hvis?) du opsøger speciallitteratur i emnet. Vi Ønsker dig fortsat god fornøjelse!
Programmering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 10 Indhold Operativsystemet Library Hukommelses-allokering Læsning og skrivning af filer
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 8 Indhold Audio Sampling Maskinkode VII MIDI DATASKOLEN Postboks 62 Nordengen 18 2980 Kokkedal
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Indhold Blitter Copper-cycling Fonts Scrollning Maskinkode VI DATASKOLEN Postboks 62 Nordengen
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 6 Indhold Logisk Matematik Blitter Modulo Blitter Object Tabel over Blitterens logiske funktioner
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A. Forness & N. A. Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 11 Indhold Ham CIA-chips Aflæsning af musen Parallelporten Maskinkode X DATASKOLEN Postboks
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 4 Indhold Maskinkode III Bitmap Farveregistre Bitplane DMA tidsforbrug Overscan DATASKOLEN
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 1 Indhold Introduktion Det binære talsystem Det hexadecimale talsystem Assemblerens funktion
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 2 Indhold DMA-kanaler Time Slot Allocation Copper Maskinkode-standarder med K-SEKA DATASKOLEN
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 5 Indhold Sprites Follow Me Maskinkode IV DATASKOLEN Postboks 62 Nordengen 18 2980 Kokkedal
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 12 Indhold Hires Interlace Wave Rotering Demo-eksempler Vector-grafik DATASKOLEN Postboks
Læs mereuprocessorens hardware
uprocessorens hardware 8080 Architecture Kernen i en processor er ALUen. Det er den som kan udfører simple regne operationer. De tal den arbejdermed gemmes i en række registre. Når et tal skal hentes eller
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 3 Indhold Binær aritmetik Logiske operatorer Status-registret Branching Bitplanes og Copper
Læs mereComputerarkitektur. - en introduktion til computerarkitektur med LINDA
Computerarkitektur - en introduktion til computerarkitektur med LINDA faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig
Læs mereInterrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK
Programmering for begyndere Brug af Arduino Programmeringskursus Interrupt - Arduino EDR Hillerød Knud Krogsgaard Jensen / OZ1QK Interrupts Programmeringskursus Genbrug Interrupts Betyder blot at man afbryder
Læs mereLærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen
Lærevejledning - en introduktion til maskinarkitektur faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig Basisuddannelse
Læs meremidi2style - program for konvertering af MIDI-filer til YAMAHA PSR stylefiler
midi2style - program for konvertering af MIDI-filer til YAMAHA PSR stylefiler Kom i gang Version 5.0 2002-2013 Jørgen Sørensen Web site: http://www.jososoft.dk/yamaha/software/midi2style E-mail: js@jososoft.dk
Læs mereMANAGED PC PC INSTALLATION INSTALLATIONS GUIDE V Telefon: CLOUD INFRASTRUKTUR DEPLOYMENT SECURITY
MANAGED PC PC INSTALLATION INSTALLATIONS GUIDE V. 2.0 CLOUD INFRASTRUKTUR DEPLOYMENT SECURITY MAINTANENCE INDHOLD Indhold 2 Indledning 3 Managed PC Installation Start op fra USB stik 4 Valg af styresystem
Læs mereArduino Programmering
Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået
Læs mereDisk-vedligeholdelse i Windows 10 - juli 2017
Side 1 Disk-vedligeholdelse i Windows 10 - juli 2017 Af OZ6YM, Palle A. Andersen En gennemgang af hvad man bør gøre, for at holde sine diske kørende optimalt i hele PC ens levetid, især SSDdiske, på Windows
Læs mereIAI Quick Start Guide
IAI Quick Start Guide Opsætning: Manualen til controllerene ligger i: Produkter\IAI\Manual\RoboCylinder\Controller\ Her ligger den i en undermappe alt efter hvilken type controller det er. Installer RCPC
Læs mereDATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen mandag den 23. juni 2003 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereMicrocontroller, Arduino
Microcontroller, Arduino Programmerbar elektronik. uc Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Forstå princippet i programmering af en uc og se mulighederne. Programmeringen
Læs mereGrundlæggende hardware- & netværkskendskab
Denne guide er oprindeligt udgivet på Eksperten.dk Grundlæggende hardware- & netværkskendskab Denne artikkel beskriver de forskellige interne & eksterne hardware-enheder du kan støde på. Desuden lidt omkring
Læs mereNår du køber hukommelse til printeren, skal du sikre dig, at SDRAM DIMMhukommelseskortet
Printerhukommelse 1 Printeren leveres med mindst 64 MB hukommelse. Du kan konstatere størrelsen på den hukommelse, der aktuelt er installeret i printeren, ved at vælge Udskriv menuer i Testmenu. Den samlede
Læs mereDATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag den 7. juni 2002 Opgaverne vægtes i forhold til tidsangivelsen, og hver opgaves besvarelse bedømmes som en helhed.
Læs mereStatus vejledning. Vejledning i håndtering af status scanner, tømning og indlæsning til EasyPOS
Status vejledning Cipherlab CPT8000 Vejledning i håndtering af status scanner, tømning og indlæsning til EasyPOS 1 Indhold 2 Håndterminalen... 1 2.1 Beskrivelse af taster... 1 2.1.1 Hvad bruges tasterne
Læs mereNavn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003
Side 1 af 8 Dato: 14-05-2003 Til Sigurd Som aftalt vil jeg her fremsende vores program til vores 80C535 kit og display. Det gik jo ud på at vi skulle starte med at få den til at intialiserer displayet,
Læs mereUdlæsning af stregkodefil til scanneren 1. Opret mappen pdt på C-drevet (c:\pdt).
Indholdsfortegnelse Introduktion... 2 Udlæsning af stregkodefil til scanneren... 3 Installation af scanneren... 5 Indlæsning af datafil i scanneren... 7 Brug af scanneren... 8 Sådan scanner du... 8 Sådan
Læs mereOpgaver til modul 1. Grundlæggende informationsteknologi
Opgaver til modul 1 Grundlæggende informationsteknologi Opgaverne svarer i indhold og sværhedsgrad til dem, der stilles ved prøven til PC-kørekort. Når du har gennemarbejdet teksterne, bør det ikke tage
Læs merePCR 40 Door Access Control unit
Installations vejledning PCR 40 Door Access Control unit Ruko A/S Copyright 2003-2005, Ruko A/S Ruko A/S Marielundvej 20 DK - 2730 Herlev DENMARK Telefon: +45 44 54 44 54 Fax: +45 44 54 4444 E-post: support@ruko.dk
Læs mereVocally 3 Infinity. In-Line, stemme aktiveret opkaldsenhed Brugsanvisning. Rev 1.01
Vocally 3 Infinity In-Line, stemme aktiveret opkaldsenhed Brugsanvisning Rev 1.01 Dette er en Dansk udgave af producentens officielle bruger manual. Der henvises til den officielle i tvivls tilfælde og
Læs mereAVR MP3 29-05-08 05576 Ingeniørhøjskolen i Århus Michael Kaalund
AVR MP3 29-05-08 Indholdsfortegnelse 1 Introduktion...2 2 Udviklingsmiljø...2 3 Beskrivelse af systemet...3 3.1 VS1001k...3 3.2 MP3 file formatet...6 4 Konklusion...6 5 Litteratur liste...6 6 Illustrations
Læs mereOversættere Skriftlig eksamen onsdag d. 25. januar 2006
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Skriftlig eksamen onsdag d. 25. januar 2006 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige
Læs mereCPUer og maskinkode DM534. Rolf Fagerberg
CPUer og maskinkode DM534 Rolf Fagerberg CPUers opbygning En CPU er bygget op af elektriske kredsløb (jvf. sidste forelæsning), som kan manipulere bits. En CPU manipulerer flere bits ad gangen, deres antal
Læs mereI stedet for at oprette en masse medlemmer, er det muligt at importere disse når bare nogle enkle spilleregler overholdes.
I stedet for at oprette en masse medlemmer, er det muligt at importere disse når bare nogle enkle spilleregler overholdes. Sidst i denne vejledning er vist et Excel dokument som det KAN se ud. Ligesom
Læs meredcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet)
dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet) Efterår 2009 1 Simpel aritmetik på maskinniveau I SCO, appendix A, er det beskrevet, hvordan man adderer ikke-negative heltal
Læs mereCOMPUTER ANATOMI. 4.-5. klasse 23. FEBRUAR 2015 HTX - ROSKILDE
COMPUTER ANATOMI 4.-5. klasse 23. FEBRUAR 2015 HTX - ROSKILDE 1 Indholdsfortegnelse Kapitel 1: Opbygning s.2 Kapitel 2: CPU s.3 Kapitel 3: Motherboard s.4 Kapitel 4: Ram s.6 Kapitel 5: Grafikkort s.7 Kapitel
Læs mereComputer Literacy. En stationær bordmodel. En Bærbar Notebook, Labtop, Slæbbar, Blærebar mm.
Computer Literacy Computer Literacy handler om at forstå hvad computer (hardware) og software kan gøre. Denne præsentation fokuserer kun på hardware februar 2002 Computerliteracy -hardware (15 dias) 1
Læs mereMulti kanal GSM porttelefon med adgangs kontrol
Multi kanal GSM porttelefon med adgangs kontrol Model: MCI-3000V1 Funktioner: Metal tastatur. Robust anti-vandal enhed. Rustfrit stål dørstation. Nem installation kun fire ledninger. Anti-Vandal højttaler
Læs mere3. Computerens opbygning.
3. Computerens opbygning. Computere er konstrueret med henblik på at skulle kunne behandle og opbevare data og det er de som nævnt i noterne om Bits og Bytes vældig gode til. Som overordnet model for computere
Læs mereSådan afbrydes forbindelsen Når du vil afslutte CallPilot-sessionen, skal du trykke 83 for at afbryde forbindelsen eller lægge røret på.
POSTKASSE-LOGON Du skal bruge et adgangsnummer (ring op til lokal 7600) til CallPilot Multimedia Messaging, et postkassenummer (7 + værelsesnummer) og en adgangskode for at logge på postkassen. 137 + værelsesnummer
Læs mereVelkommen til IT for let øvede
Velkommen til IT for let øvede Kursus er hjælp til selvhjælp og I får mest ud af det, hvis I også derhjemme afsætter nogle timer til øvelser på jeres computer. Vi sørger for hjemmeopgaver!! Der er masser
Læs mereInstallation Windows 7
Du skal gøre følgende: Check om PC en har et Windows 7 logo: Logoet sidder på "kabinettet" (CPU'en/harddisken - kært barn har mange navne) hvis det er der, så følges vejledningen som er herunder. Du kan
Læs mereBrugermanual. 2GB MP3 afspiller
Brugermanual 2GB MP3 afspiller Indhold 1. Knappe funktioner og fremgagnsmåde... 4 2. Instruktioner... 4 2.1 Tænd og sluk... 4 2.2 Upload Music to the Player... 5 2.3 Afspil musik... 6 2.4 Normal or shuffle
Læs mereBlockprog Rev1.0. Block programmering CS1/CJ1. Qiuck guide OMRON
Blockprog Rev1.0 Block programmering CS1/CJ1 Qiuck guide OMRON Indholdsfortegnelse 1. SPECIFIKATION... 3 2. PROGRAMMERINGS INSTRUKTIONER.... 4 3. BLOK PROGRAMMERING... 5 3.1. BPRG OG BEND... 5 4. BETINGELSES
Læs mereProjekt - RoboNet Del Journal.
Projekt - RoboNet Del Journal. Udarbejdet af: Klaus Jørgensen. Gruppe: Jacob Clausen, Klaus Jørgensen og Ole Rud It og Elektronikteknolog, 2a Erhvervsakademiet Fyn Udarbejdet i perioden: 20/01-03 03/02-03
Læs mereIndhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...
Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens
Læs mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereDATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen torsdag den 3. juni 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereDansk Manual 2015 Dato: 31.03.15. Læs manualen før brug! RX-4 automatisk tablet tæller. Operatør Manual
Dansk Manual 2015 Dato: 31.03.15 Læs manualen før brug! RX-4 automatisk tablet tæller Operatør Manual 1 Indhold Pakkens indhold:... 3 Beskrivelse af maskinen:... 3 Betjeningsvejledning:...:... 4 Placering
Læs mereFejlsikret Windows Fejlsikret start
Fejlsikret Windows Hvis din computer ikke vil starte, eller hvis den konstant går ned, kan du bruge fejlsikret tilstand til at finde og eventuelt rette fejlen. Fejlsikret tilstand kan også hjælpe dig med
Læs mereInstallation af GPS med tilslutning til USB port
Indholdsfortegnelse Opsætning af GPS-tilslutning... 1 1: Installation af driver... 2 2: Opsætning af COM-port... 2 3: Vælg COM-port i DLS NG... 3 4: Brug af GPSViewer testprogram... 5 5: Hvis COM-port
Læs merePERFECT JUMP Böttcher Tomschke Video Hopmålesystem BUOY-X/Y-CO-ORDINATES Installation til Software Version 6.0 GTK 1997
PERFECT JUMP Böttcher Tomschke Video Hopmålesystem BUOY-X/Y-CO-ORDINATES Installation til Software Version 6.0 GTK 1997 1. Placering af kameraer. Kamera B skal anbringes ca. 5 til 10 meter længere væk
Læs mereSynkron kommunikation
Synkron kommunikation Synkron kommunikation betyder, at kommunikationen foregår her og nu, med ingen eller kun lidt forsinkelse. De to kommunikatorer er synkrone de "svinger i samme takt". Et eksempel
Læs mereDansk El-montage manual Portautomatik
Dansk El-montage manual Portautomatik (med fysiske ende stop) Terminaler: Power Portstyring 1 2 Power input 220/230Vac. Kabeldim. 3x1.5 PVIKJ eller lign. 3 4 Advarselslampe. Udgang 230Vac/20W. Signalet
Læs mereVejledning til opbygning af hjemmesider
Side 1 af 9 Vejledning til opbygning af hjemmesider Hvis du er inde på din klubs hjemmeside, fx på forsiden, kan du nu gå i gang med at redigere. For at få redigeringsværktøjet frem, skal du klikke på
Læs mereStyresystemet er den del af softwaren, der sammenkæder hardware og brugerprogrammer, således at de kan arbejde sammen.
Hvad sker der, når der tændes for PC en? Når computeren tændes, kontrolleres en række funktioner, bl.a. ram, harddisk, mus, tastatur, diskettedrev og lignende, før det rigtige Windows- billede vises på
Læs mereVelkommen til IT for let øvede
Velkommen til IT for let øvede Kursus er hjælp til selvhjælp og I får mest ud af det, hvis I også derhjemme afsætter nogle timer til øvelser på jeres computer. Vi sørger for hjemmeopgaver!! Der er masser
Læs mereAUTOMATION SERVICE. Sådan anvender du programmet Automation Service. Udviklet af PC SCHEMATIC A/S
AUTOMATION SERVICE Sådan anvender du programmet. Udviklet af PC SCHEMATIC A/S Opdateret feb. 2015 FORORD Dette hæfte viser, hvordan du anvender programmet. ET PAR DEFINITIONER PC SCHEMATIC Automation er
Læs mereLærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner
Virtuel PC Fordele/ulemper Fordele: Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner Ulemper: Reserverer RAM (Windows 7) Problemer med at ureglementeret lukke ned Mister
Læs mereDATALOGI MASKINARKITEKTUR Blok 2 samt Reeksamination i DATALOGI MASKINARKITEKTUR Blok 1 og arkitekturdelen af DATALOGI 1E
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI MASKINARKITEKTUR Blok 2 samt Reeksamination i DATALOGI MASKINARKITEKTUR Blok 1 og arkitekturdelen af DATALOGI 1E Vejledende løsninger til
Læs mereLAVT BATTERI SIGNAL - Hvis ERROR blinker alene 7 gange, hurtigt efter hinanden, er batteriet ved at være brugt op.
ELEKTRONISK DIGITAL KOMBINATIONSLÅS RUNNER GENERELLE NOTER (3. UDGAVE) TYPER DER FINDES 4 VERSIONER: NORMAL (V.01) MED KODE TIL BRUG OG TIL NØDSITUATIONER (V.02), MED TIDSFORSINKELSE (V.03), TIL INDGANGSDØRE
Læs mereSonofon Erhverv. Kom godt i gang. med SMS fra Outlook Brugervejledning. 1107V01-93.010.014 gældende fra 29. oktober
Sonofon Erhverv Kom godt i gang med SMS fra Outlook Brugervejledning 1107V01-93.010.014 gældende fra 29. oktober Grundlæggende funktionalitet Med SMS fra Outlook kan du enkelt sende både SMS, MMS og fax
Læs mereLageradministration. dopsys
Lageradministration 1 Lageret i maskinarkitekturen Beregningsenhed, lagre (registre, RAM, disk), ydre enheder 2 Abstraktion over typerne: et hierarki En maskine har flere forskellige lagre Operativsystemet
Læs mereKom godt i gang med SMS fra Outlook
Grundlæggende funktionalitet Med SMS fra Outlook kan du enkelt sende både SMS, MMS og fax fra Outlook. Programmet er integreret med din personlige Outlook-kontaktliste, og gør afsendelse af meddelelser
Læs mereSIKRING. KC KeySafe. Sikker opbevaring af nøgler! - et sikkert valg...
SIKRING KC KeySafe Sikker opbevaring af nøgler! - et sikkert valg... ELEKTRONISK DIGITAL KOMBINATIONSLÅS RUNNER GENERELLE NOTER (3. UDGAVE) TYPER DER FINDES 4 VERSIONER: NORMAL (V.01) MED KODE TIL BRUG
Læs mereMircobit Kursus Lektion 5 (Du skal her vælge Lets Code og nederst Microsoft Block Editor.)
Mircobit Kursus Lektion 5 http://microbit.org/ (Du skal her vælge Lets Code og nederst Microsoft Block Editor.) Vi laver en variabel point til at holde styr på pointene. Af en mystisk grund kunne man ikke
Læs mereProgrammering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen
Programmering Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Oversigt Undervisningen Hvad er programmering Hvordan er et program organiseret? Programmering og fysik Nobelprisen
Læs mereDesign af IT-medier. Skriftlig prøve 27. august 1999. Alle skriftlige hjælpemidler er tilladt.
Design af IT-medier Skriftlig prøve 27. august 1999 Varighed: Hjælpemidler: Bedømmelse: Besvarelse: Opgaver: 4 timer. Alle skriftlige hjælpemidler er tilladt. Karakter efter 13-skalaen. Alle ark skal være
Læs mereKapitel 4 Løkker i C#
Kapitel 4 Løkker i C# Løkker en vigtig del af alle programmeringssprog, og C# er ikke andeles. En løkke er en måde at udføre en del af koden gentagne gange. Ideen er at du fortsætter med at udføre en opgave
Læs mereBrugermanual til CLINT Chiller/Varmepumpe enheder
439,45 Brugermanual til CLINT Chiller/Varmepumpe enheder - 1 - BRUGERGRÆNSEFLADE Enhedens frontpanel fungerer som brugergrænseflade og bruges til at udføre alle handlinger, der har med enheden
Læs mereFlowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller.
Flowchart Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller. Et godt program til at tegne flowcharts med er, EDGE-Diagrammer, eller Smartdraw.
Læs mereRuko Security Master Central Database
Ruko Security Master Central Database RSM benytter en central database, til at udveksle låsesystemer mellem Ruko og låsesmeden. Udvekslingen sker via Internettet, så det er derfor nødvendigt at have en
Læs mereOvervågningskamera. ~Af Svend, Valdemar og Frederik~
Lavet af Svend, Valdemar og Frederik 2.3 HTX - Roskilde Overvågningskamera ~Af Svend, Valdemar og Frederik~ I dette forløb har vi arbejdet med overvågningskameraer. Det handlede om at lære, hvordan et
Læs mereDatamaters arkitektur og programmering
Mikael Svenstrup Datamaters arkitektur og programmering 1/24 Datamaters arkitektur og programmering MM11: Seriel kommunikation 2 (SW) Indhold Mikael Svenstrup Datamaters arkitektur og programmering 2/24
Læs mereIntroduktion til CD ere og Arkivdeling Gammel Dok - September-oktober 2003. Jonas Christiansen Voss
Introduktion til CD ere og Arkivdeling Gammel Dok - September-oktober 2003 Jonas Christiansen Voss 2. marts 2004 Indhold 1 CD ere 2 1.1 Brænde dokumenter til CD....................... 2 1.2 Disk Copy.................................
Læs mereKonfigurationsværktøj for MJK Instrumenter
Konfigurationsværktøj for MJK Instrumenter Quick Guide Version nr.: 840150-002 www.mjk.com DK: +45 45 56 06 56 NO: +47 69 20 60 70 SE: +46 53 31 77 50 NL: +31 251 672171 USA: +1 847 482 8655 AUS: +61 3
Læs mereVejledning. Indhold. 1. BitLocker. 2. Vigtig information
Vejledning Afdeling UCL Erhvervsakademi og Professionshøjskole IT Oprettet 07.06.2018 Redigeret 12.09.2019 Udarbejdet af Lone Petersen Dokumentnavn (DK) Bitlocker kryptering af C-drev og USB-drev UCL Indhold
Læs mereBrugermanual MP3 afspiller
Brugermanual MP3 afspiller Du kan downloade manualen via følgende link: http://www.accessionx.com/dow nload/manual_links/1331.pdf Importør: Accession ApS, Vandmanden 34, 9200 Aalborg SV 2 Indholdsfortegnelse
Læs mereSådan opretter du en backup
Excovery Guide Varighed: ca. 15 min Denne guide gennemgår hvordan du opretter en backup med Excovery. Guiden vil trinvist lede dig igennem processen, og undervejs introducere dig for de grundlæggende indstillingsmulighed.
Læs mereI løbet af 2017 vil C-drevet på alle UCL s bærbare computere automatisk blive krypteret med BitLocker.
BitLocker BitLocker kan bruges til kryptering af drev for at beskytte alle filer, der er gemt på drevet. Til kryptering af interne harddiske, f.eks. C-drevet, bruges BitLocker, mens man bruger BitLocker
Læs mereMYLOQ 1101 Kodecylinder
MYLOQ 1101 Kodecylinder Brugsanvisning DK Vigtig information før anvending Kodecylinderen skal aktiveres før brug (se side 3). En administrationskode skal tilføjes. Vær sikker på at få skrevet den nye
Læs mereFormål: Indledning: Notationer
Formål: Formålet med dette kompendium er at gennemgå de forskellige principper bag EDB printeren, således at læseren efter gennemgangen, har overblik over printeren som enhed. Indledning: I nudansk ordbog
Læs mereManual til Neopost IJ-40 og IJ-50
Manual til Neopost IJ-40 og IJ-50 1. Skift af farvepatron Ved skift af farvepatron er det vigtigt, at man bruger følgende fremgangsmåde: HUSK! Fjern beskyttelsestapen fra printhovederne! 1.1. Log på som
Læs mere//--------------------------------- Definition af porte og funktioner -------------------------
Temeraturmåler (C-program).txt // Initialiserings-sekvens #include #pragma model=medium #pragma code=0x0000 #pragma xdata=0x4000 #pragma asm=on #pragma parameters=register //#define display P4
Læs mereSoftwaremanual. HP SimpleSave. Backup-software Brugsanvisning. SimpleSave
HP SimpleSave Backup-software Brugsanvisning Softwaremanual SimpleSave Sådan får du hjælp For yderligere hjælp med dit drev, installation af det samt softwaren, kan du kontakte en af følgende: HP Kundeservice
Læs mereAnaloge indgange og A/D konvertering. Analoge udgange
Programmering for begyndere Brug af Arduino Programmeringskursus Analoge indgange og A/D konvertering Analoge udgange Knud Krogsgaard Jensen OZ1QK Oversigt Oversigt over i aften: A/D konvertering iterations
Læs mereDUNE HD 102 Indhold DUNE HD HDMI WIFI Modtageren Tændt Slukket USB port AV OUT
Indhold DUNE HD TV-102 modtagerboks Strømforsyning HDMI-kabel AV-kabel (anvendes, hvis dit TV ikke har HDMI men kun scart-indgang) IR-øje (anvendes, hvis fjernbetjeningen ikke kan se boksen) Fjernbetjening
Læs mereAcronis et stærkt værktøj til backup. Af Hanne B. Stegemüller 6. juni 2015
Acronis et stærkt værktøj til backup Af Hanne B. Stegemüller 6. juni 2015 Acronis True Image 2015 Denne guide handler om det meget stærke værktøj til backup, der hedder Acronis. Jeg baserer guiden på flere
Læs mereBrugermanual Netværkoptager (NVR)
Brugermanual Netværkoptager (NVR) Indholdsfortegnelse Login på videooptageren...2 Brugerkonti...2 Afspilning og Søgning i optagelser...3 Visnings vindue...3 Optagelses søgetype...4 Optagelses kalender...4
Læs mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereBrugermanual for Agromatic Digital Super I SW 1.08
Brugermanual for Agromatic Digital Super I SW 1.08 Version : DK 2016-1.08 Nyskovvej 13 DK-6580 Vamdrup Tlf. +45 76 92 02 00 Fax +45 75 58 06 31 E-mail: scales@farmertronic.com www.farmertronic.com Indhold
Læs mereTypisk PC arkitektur. Synkronisering ved aktiv venten
Oversigt I/O arkitektur Kommunikation mellem processor og ydre enhed Brugerprocessers adgang til I/O Strukturen af kernens I/O del Ydelse Typisk C arkitektur Kontrol af ydre enheder De ydre enheder styres
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 10. april, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereOprettelse af Titelblok i Capture og Capture CIS
e-service Titelblok i OrCAD Capture og Capture CIS Side 1 af 11 Oprettelse af Titelblok i Capture og Capture CIS Note skrevet af : Nordcad Systems Technical Support Revision : April 2003, Release 14.2/9.2.3,
Læs mereSIGIL Sådan opretter du en e- bog Step by Step
SIGIL Sådan opretter du en e- bog Step by Step Af Gitte Winter Graugaard Nov. 2013, Sigil version 0.7.2 1 Her følger en intro skridt for skridt til at oprette en e- bog i SIGIL og publicere den på SAXO
Læs mereIntro til AVR. Mads Pedersen, OZ6HR mads@oz6hr.dk
Intro til AVR Mads Pedersen, OZ6HR mads@oz6hr.dk Projektidé Brug en AVR-microcontroller Mål temperatur vha. temperatursensor Vis på display Send til computer og vis temperatur Slide 2 Plan 27/10-2005:
Læs mereEkstra hastighed med array's i Excel-VBA
Denne guide er oprindeligt udgivet på Eksperten.dk Ekstra hastighed med array's i Excel-VBA Brugen af arrays til indlæsning af og skrivning til celler i Excel kan give betragtelige hastighedsforøgelser
Læs mereLidt orientering om, hvad en computer består af
Lidt orientering om, hvad en computer består af Lidt orientering om, hvad en computer består af...1 Introduktion...2 Skærm...2 Printer...2 Tastatur...2 Mus...3 CPU...3 Bundkort...4 Strømforsyning...4 RAM/
Læs mereDM13-3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode
- 3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode Jacob Aae Mikkelsen - 191076 12. december 2005 1 Indhold 1 Opgave beskrivelse 2 2 Muligheder for optimering 2 2.1 efter branch.........................
Læs mere