Datamaskinen LC-2. Dagens tema. Tall i datamaskiner Hvorfor kan LC-2 lagre tall i intervallet ? Hvorfor er det akkurat celler i lageret?

Like dokumenter
Dagens tema. Datamaskinen LC-2 En kort repetisjon. Binære tall Litt om tallsystemer generelt. Binære tall. Heksadesimale og oktale tall

IN 147 Program og maskinvare

Dagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.

Dagens tema: INF2100. Utvidelser av Minila array-er. tegn og tekster. Flass- og Flokkode. prosedyrer. Prosjektet struktur. feilhåndtering.

Dagens tema INF1070. Vektorer (array er) Tekster (string er) Adresser og pekere. Dynamisk allokering

Digital representasjon

Vektorer. Dagens tema. Deklarasjon. Bruk

Digital representasjon

Dagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.

Offentlig utvalg for punktskrift, OUP Norsk standard for 8-punktskrift punktskrift 24. oktober 2004 sist endret

Dagens tema INF1070. Vektorer (array-er) Tekster (string-er) Adresser og pekere. Dynamisk allokering

Digital representasjon

Velkommen til INF2100. Bakgrunnen for INF2100. Hva gjør en kompilator? Prosjektet. Jeg er Dag Langmyhr

IN 147 Program og maskinvare

ISO Dagens tema. Tegn. Uttrykk. I Minila lagres kun heltall, men de kan tolkes som tegn. Det siste om Minila.

Velkommen til INF2100

Velkommen til INF2100

Dagens tema: Enda mer MIPS maskinkode

Dagens tema. Mer MIPS maskinkode. Maske-operasjoner Skift-operasjoner Lesing og skriving Pseudo-instruksjoner Mer om funksjonskall Registeroversikt

Dagens tema. LC-2 LC-2 er en «ekstrem-risc»; den har 16 instruksjoner og 3 adresseringsmåter.

Prosessoren. Bakgrunnen Innhold LMC. Assemblerkode Oppsummering instruksjonene [Englander kap 6] Hva inneholder den? Hvordan utføres instruksjonene?

Oppbygningen av en datamaskin Det viktigste i en moderne datamaskin er hovedkortet («motherboard»):

Det viktigste i en moderne datamaskin er hovedkortet («motherboard»):

Hvordan en prosessor arbeider, del 1

Alle hele tall g > 1 kan være grunntall i et tallsystem.

Det viktigste i en moderne datamaskin er hovedkortet («motherboard»):

Overordnet maskinarkitektur. Maskinarkitektur zoomet inn. I CPU: Kontrollenheten (CU) IT1101 Informatikk basisfag, dobbeltime 11/9

Tallsystemer. Tallene x, y, z og u er gitt ved x = 2, y = 2, z = 4 og u = 2. Dermed blir =

Dagens tema. Rask-maskinen. Rasko-kode Raskas-kode. Litt datamaskinhistorie Registre og lagre Instruksjoner

En overikt. Dagens tema. Datamaskinenes historie. Rask-maskinen Litt datamaskinhistorie Registre og lagre Instruksjoner. Rasko-kode.

Læringsmål. INF1000: Forelesning 12. Hovedkilde. Kunne binærtall og heksadesimale tall og konvertering mellom ulike tallsystemer: Titallsystemet

Det viktigste i en moderne datamaskin er hovedkortet («motherboard»):

Alle hele tall g > 1 kan være grunntall i et tallsystem.

Innhold. 2 Kompilatorer. 3 Datamaskiner og tallsystemer. 4 Oppsummering. 1 Skjerm (monitor) 2 Hovedkort (motherboard) 3 Prosessor (CPU)

Tallsystemer. Tallene x, y, z og u er gitt ved x = 2, y = 2, z = 4 og u = 2. Dermed blir =

INF-103. Velkommen til. Første time. Fra brukergrensesnitt til maskinvare. eller Datamaskinen på tvers. Andre time

INF-103 Fra brukergrensesnitt til maskinvare

Dagens tema. Datamaskinenes historie. De første moderne datamaskiner. Løsning. Menneskene har alltid prøvd å lage maskiner for å løse sine problemer.

Forelesning 5. Diverse komponenter/større system

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

Oppsummering Assemblerkode Hopp Multiplikasjon Kode og data Array Oppsummering

Kapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte

INF1400 Kap4rest Kombinatorisk Logikk

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

Debugging. Tore Berg Hansen, TISIP

Læringsmål og pensum. v=nkiu9yen5nc

TALL. Titallsystemet et posisjonssystem. Konvertering: Titallsystemet binære tall. Det binære tallsystemet. Alternativ 1.

Pensum Hovedtanker Selvmodifiserende Overflyt Veien videre Eksamen. Oppsummering

Unicode. Unikt vakkert eller unisont håpløst? En vandring gjennom tegnkodingens historie. Dag Lamgmyhr, Ifi/UiO Ark 1 av 23

INF1040 Digital representasjon TALL

Den siste dagen. Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Veien videre... Eksamen

En oppsummering (og litt som står igjen)

For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen.

INF1040 Oppgavesett 7: Tall og geometrier

Modulo-regning. hvis a og b ikke er kongruente modulo m.

TDT ITGK - Hardware. Kapittel 9: Følge Instruksjoner - Prinsipper for Datamaskinens Virkemåte. Terje Rydland - IDI/NTNU

Velkommen til INF2100

Potenser og tallsystemer

Forhistorien Menneskene har alltid prøvd å lage maskiner for å løse sine problemer. Dagens tema

Datamaskinenes historie Når, hvor og hvorfor ble de første datamaskiner laget? Hvordan har utviklingen gått? Hva inneholder en datamaskin?

Mer om representasjon av tall

Programmeringsspråket C

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

Diskret matematikk tirsdag 13. oktober 2015

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

Oppsummering av Uke 3. MAT1030 Diskret matematikk. Binære tall. Oppsummering av Uke 3

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

Tall. Binære regnestykker. Binære tall positive, negative heltall, flytende tall

Løsningsforslag til øving 5 TFE4105 Digitalteknikk og Datamaskiner Høsten 2006

Potenser og tallsystemer

Programmeringsspråket C Del 2

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

Teori og oppgaver om 2-komplement

Forelesning Datatyper Kap 5.2 Instruksjonsformat Kap 5.3 Flyttall App B

Sprettende ball. Introduksjon: Steg 1: Vindu. Sjekkliste. Skrevet av: Sigmund Hansen

Del 1 En oversikt over C-programmering

hvor mye hurtigminne (RAM) CPU en kan nyttiggjøre seg av. mens bit ene betraktet under ett kalles vanligvis et ord.

Oppgaver MAT2500. Fredrik Meyer. 11. oktober 2014

Programmeringsspråket C Del 2

Programmeringsspråket C Del 2

Dagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen

Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form

Sprettende ball Introduksjon Processing PDF

Kapittel 3. The fun starts

Husk å registrer deg på emnets hjemmeside!

INF2100. Dagens tema: Flink-maskinen Litt datamaskinhistorie. Registre og lagre. Instruksjoner. Flass-koden

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

Resymé: I denne leksjonen blir de viktigste tallsystemer presentert. Det gjelder det binære, heksadesimale og desimale tallsystem.

Dagems temaer. kapittel 4 i Computer Organisation and Architecture. av CPU: von Neuman-modellen. Transfer Language (RTL) om hurtigminne (RAM)

Dagens tema. Nyttige programmer Programmet make. Hvis én fil endres, hvilke filer må da kompileres på nytt?

Tall. Posisjons-tallsystemer. Representasjon av heltall. Tall positive, negative heltall, flytende tall. Tekst ASCII, UNICODE XML, CSS

Tegn og tekst. Posisjonssystemer. Logaritmer en kort repetisjon. Bitposisjoner og bitmønstre. Kapittel August 2008

7034 Trondheim - NTH 1.1 KILDEPROGRAM S KOMPILERING OG ASSEBMLERING S LENKING AV OBJEKTFILER S UTFØRELSE AV PROGRAMMET S.

INF1040 løsningsforslag oppgavesett 7: Tall og geometrier

! Sentrale begreper er adresserbarhet og adresserom. ! Adresserbarhet: Antall bit som prosessoren kan tak samtidig i én operasjon

Transkript:

Dagens tema Datamaskinen LC-2 En kort repetisjon Binære tall Litt om tallsystemer generelt Binære tall Heksadesimale og oktale tall Programmering av LC-2 Maskinkode Assemblerkode Kjøring av LC-2-programmer Instruksjonene add, ld, st og trap Datamaskinen LC-2 ALU N Z P Prosessor R0 R1 R2 R3 R4 R5 R6 R7 PC Registre 0 1 2 3 4 5 6 65529 65530 65531 65532 65533 65534 65535 Minne ALU-en kan + (og litt annet), men ikke, eller De 8 registrene kan lagre tall 0 til 65535 eller 32768 til 32767 De 65536 cellene i minnet kan lagre samme type tall De tre flaggene N, Z og P kan lagre 0 eller 1 PC-registeret forteller hva som er neste instruksjon Ark 1 av 24 Ark 2 av 24 Tall i datamaskiner Hvorfor kan LC-2 lagre tall i intervallet 0 65535? Hvorfor er det akkurat 65536 celler i lageret? Svaret ligger i at datamaskinen lagrer tall binært, det vil si med grunntall 2 Ulike tallsystemer (20 26 i Englander-boken) I posisjonelle tallsystemer angir hvert siffers posisjon hvilken vekt det skal ha: 107 = 1 100 + 0 10 + 7 1 = 1 10 2 + 0 10 1 + 7 10 0 (Notasjonen «10 2» leses som «10 i andre» og betyr 10 10 Generelt betyr a n («a i n-te») n ganger {}}{ a a a Ellers er det verdt å merke seg at a 0 = 1 uansett hva a er) Her er grunntallet 10, men må det være slik? Ikke-desimale tallsystemer Tid og vinkler angis i et 60-tallsystem: Klokken 102749 Kursen er 82 14' 51" På dansk og fransk lever ennå restene av et 20-tallsystem: «ni-og-halv-fems»: 9 +(5 1 ) 20 = 99 2 «quattre-vingt-dix-neuf»: 4 20 + 10 + 9 = 99 Gamle engelske hulmål økte med en faktor 2: 1 jack 0,071 liter 2 jacks = 1 gill 2 gills = 1 chopin 2 chopins = 1 pint 2 pints = 1 quart 2 quarts = 1 pottle 2 pottles = 1 gallon 2 gallons = 1 peck 2 pecks = 1 demibushel 2 demibushels = 1 bushel 2 bushels = 1 kilderkin 2 kilderkins = 1 barrel 2 barrels = 1 hogshead 2 hogsheads = 1 pipe 2 pipes = 1 tun 1160 liter Ark 3 av 24 Ark 4 av 24

Det binære tallsystemet Siden det er spesielt enkelt å lagre bit («binary digit) benyttes det binære tallsystemet i datamaskiner I det binære tallsystemet er grunntallet 2 og sifrene 0 og 1 0 10 0 2 8 10 1000 2 1 10 1 2 9 10 1001 2 2 10 10 2 10 10 1010 2 3 10 11 2 11 10 1011 2 4 10 100 2 12 10 1100 2 5 10 101 2 13 10 1101 2 6 10 110 2 14 10 1110 2 7 10 111 2 15 10 1111 2 For eksempel tolkes 1101 2 slik: 1 2 3 +1 2 2 +0 2 1 +1 2 0 = 8+4+0+1 = 13 Norsk språkråd meneratdetbørhetebit (med lang i) Byte I en datamaskin kan man ikke operere med enkelt-bit; i stedet slås de oftest sammen i grupper på 8 og 8 kalt en byte Her kan man lagre tall fra 0 til 255: 0 0 0 0 0 0 0 0 = 0 10 0 0 0 0 0 0 0 1 = 1 10 1 1 1 1 1 1 1 0 = 254 10 1 1 1 1 1 1 1 1 = 255 10 Ord På de fleste maskiner slår man også flere byte sammen til større enheter kalt ord («word») På LC-2 er disse 2 byte eller 16 bit, og man kan da lagre tall opptil 65 535: 0000000000000000 2 = 0 10 0000000000000001 2 = 1 10 1111111111111110 2 = 65 534 10 1111111111111111 2 = 65 535 10 Ordet byte er et ordspill; bit kan bety en liten matbit, og da blir bite en hel munnfull På norsk skal man helst bruke ordet oktett Ark 5 av 24 Ark 6 av 24 Hex-tall En ulempe ved binære tall er at de tar så stor plass når man skriver dem Derfor benyttes ofte heksadesimale tall med grunntall 16 ved innlesning og utskrift Man slår da sammen 4 og 4 bit; dette gir en verdi 0 15 som angis med et hex-siffer: 0, 1, 2,, 9, A, B, C, D, E, F Dette er kun en notasjon som skal gjøre livet enklere for oss mennesker Eksempel 10010011101 2 = 0100 1001 1101 =49D 16 Oktale tall Tidligere brukte man ofte oktale tall med grunntall 8 Her slår man sammen 3 og 3bit Negative tall (42 45 i Englander-boken) Man kan også lagre negative tall i det binære tallsystemet Det vanligste formatet for dette heter toer-komplement («two s complement») For å negere et tall, må man da gjøre følgende: ❶ Snu alle bit-ene i tallet (0 1) ❷ Legg til 1 Eksempel 13 10 = 0 0 0 0 1 1 0 1 13 10 = 1 1 1 1 0 0 1 1 Ark 7 av 24 Ark 8 av 24

Tallområde Når man lagrer negative tall, kan man ikke lagre så store tall lenger I én byte kan man for eksempel lagre tall mellom 128 og 127: 0 1 1 1 1 1 1 1 = 127 10 0 1 1 1 1 1 1 0 = 126 10 0 0 0 0 0 0 0 1 = 1 10 0 0 0 0 0 0 0 0 = 0 10 1 1 1 1 1 1 1 1 = 1 10 1 0 0 0 0 0 0 1 = 127 10 1 0 0 0 0 0 0 0 = 128 10 Fortegns-bit Man kan teste om tall lagret som toer-komplement er negative ved å se på det venstre bit-et Det er alltid 0 for tall 0 og1 for negative tall Dette bit-et kalles derfor fortegns-bitet Tall med og uten fortegns-bit Hvordan vet maskinen om den har et stort positivt tall uten fortegns-bit, eller et negativt tall med fortegns-bit? Det vet den ikke! Vi må holde rede på slikt Dette er typisk for programmering på maskinnært nivå: Maskinen lagrer og opererer på bit-mønstre Alt ansvaret for fortolkning av bit-mønstrene ligger på programmereren Av og til er det nyttig å tolke et bit-mønster på ulike måter Ark 9 av 24 Ark 10 av 24 Programmering av LC-2 (51 52 i Patt&Patel-boken) Maskinen kan gjøre følgende: 0 Hoppe til en annen instruksjon 1 Addere to tall 2, 6, 10 Hente et tall fra minnet 3, 7, 11 Lagre et tall i minnet 4, 12 Hoppe til en rutine/metode 5 Nulle bit (logisk OG) 8 Avslutte et avbrudd 9 Snu bit (logisk negasjon) 13 Avslutte en rutine/metode 14 Finne en adresse i minnet 15 Kall operativsystemet Siden operasjonen kan kodes med tall 0 15, trengs det 4 bit til å lagre den 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 1 x x x x x x x x x x x x ADD Addisjon Anta at vi ønsker å legge sammen R1 og R2 og plassere resultatet i R3 Dette kodes slik: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0 0 1 0 ADD R3 R1 R2 Hvis R1 inneholder 6 og R2 er 18, blir nå verdien 12 lagt i R3 Økning av register Ofte vil vi addere med en fast verdi; denne kan da legges i en variant av add-instruksjonen: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 1 1 1 0 1 1 0 1 0 0 0 0 1 ADD R6 R6 1 Her økes R6 med 1 Ark 11 av 24 Ark 12 av 24

Maskin- og assemblerkode (71 73 i Patt&Patel-boken) Vi ser fort at det å skrive slik binær maskinkode er tidkrevende og kjedelig, og det er lett å gjøre feil Derfor fant man tidlig på å lage en assembler som kan oversette fra instruksjonsnavn til maskinkode Det er mye lettere å skrive enn add R6,R6,#1 0001110110100001 NB! En assembler er noe annet enn en kompilator som oversetter fra språk som C og Java Med assemblerkode vet vi nøyaktig hvilken maskinkode som blir laget En kompilator lager den koden den synes er best for den aktuelle maskinen koden skal kjøre på Assemblerkode for én prosesser er ganske anderledes enn koden for andre Et høynivåprogram kan kjøres uendret på mange typer prosessorer Ark 13 av 24 I et redigeringsprogram lager vi filen inkrasm: ; Dette programmet øker register R6 med 1 orig x3000 ; [Startadresse] add R6,R6,#1 ; Øk R6 med 1 end Her ser vi følgende: Kommentarer startes med et «;» og gjelder resten av linjen Instruksjonen add skrives i klartekst med sine tre parametre Desimaltall angis med «#» foran (Foran hex-tall skriver vi en «x») Direktivet orig forteller assembleren hvor i lageret koden skal legges Direktivet end forteller assembleren at nå er det slutt Under Unix vil vi bruke Emacs, på en Windows-maskin kan vi benytte LC2Edit som kan hentes fra Internett; se kursets hjemmeside Ark 14 av 24 Assemblering Så kan vi assemblere filen: > lc2asm inkrasm inkr Dette lager diverse filer; vi er interessert i inkrlst viser den koden som ble generert: (0000) 3000 0011000000000000 ( 3) orig 0x3000 (3000) 1DA1 0001110110100001 ( 5) add r6 r6 0x0001 inkrobj er koden som senere skal kjøres Under Unix brukes kommandoen lc2asm, mens man bruker «Assemble» i Translate-menyen til LC2Edit når man sitter ved en Windows-maskin Ark 15 av 24 Kjøring Nå kan vi kjøre programmet vårt Siden vi ikke har noen ekte LC-2, må vi bruke en simulator: xlc2sim & Vi henter inn det assemblerte programmet inkrobj ved å bruke «Load Program» i File-menyen Da får vi et vindu med vår LC-2 på skjermen På en Unix-maskin heter simulatoren xlc2sim; Windows-brukeren kan benytte Simulate som kan hentes fra Internett Ark 16 av 24

Neste instruksjon er nr 3000 16 som er vår add Vi utfører neste instruksjon ved hjelp av vinduet vi finner i «Step Program» i Run-menyen Ark 17 av 24 Ark 18 av 24 Etterpå er situasjonen slik: Instruksjonene ld og st Vi trenger også instruksjoner for å flytte data til og fra minnet: orig x3000 ; [Startadresse] ld R1,varA ; Kopiér vara til R1 st R1,varB ; Skriv R1 til varb vara: fill #-7 varb: fill #0 end Instruksjonen ld (forkortelse for «load») henter data fra minnet til et register Instruksjonen st (for «store») kopierer et ord fra et register til minnet Vi ser at to ting er endret: PC er økt til 3001 16 Register R6 er økt til 1 Vi har skrevet og kjørt vårt første assemblerprogram! Direktivet fill setter av plass i minnet og angir hva det skal fylles med når programmet starter Foran fill kan vi sette en merkelapp («label» på engelsk) som gir navn på denne lokasjonen Ark 19 av 24 Ark 20 av 24

April 1995, DFL, Ifi/UiO Instruksjonen trap Denne instruksjonen gjør det mulig å få kontakt med operativsystemet På LC-2 er ikke dette mye: trap x20 ; Leser ett tegn fra tastaturet inn i R0 trap x21 ; Skriver tegnet i R0 på konsollet trap x22 ; Skriver en tekst (pekt på av R0) på konsollet trap x23 ; Ber om et tegn; ellers som x20 trap x25 ; Avslutter kjøringen Ark 21 av 24 Et eksempel til Med disse instruksjonene kan vi skrive et nytt program som skriver en stor «A» på konsollet Kodingstabellen for ISO 8859-1 forteller oss at «A» har kode 65 0 000 00 1 001 01 2 002 02 3 003 03 4 004 04 5 005 05 6 006 06 7 007 07 8 010 08 9 011 09 10 012 0A 11 013 0B 12 014 0C 13 015 0D 14 016 0E 15 017 0F 16 020 10 17 021 11 18 022 12 19 023 13 20 024 14 21 025 15 22 026 16 23 027 17 24 030 18 25 031 19 26 032 1A 27 033 1B 28 034 1C 29 035 1D 30 036 1E 31 037 1F ISO 8859 1 04 64 100 96 140 128 200 160 240 32 0! " # $ % & ( ) * +, / 0 1 2 3 4 5 6 7 8 9 : ; < = >? 33 041 34 042 35 043 36 044 37 045 38 046 39 047 40 050 41 051 42 052 43 053 44 054 45 055 46 056 47 057 48 060 49 061 50 062 51 063 33 52 064 34 53 065 35 54 066 36 55 067 37 56 070 38 57 071 39 58 072 3A 59 073 3B 60 074 3C 61 075 3D 62 076 3E 63 077 @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ 20 40 65 101 21 41 66 102 22 42 67 103 23 43 68 104 24 44 69 105 25 45 70 106 26 46 71 107 27 47 72 110 28 48 73 111 29 49 74 112 2A 4A 75 113 2B 4B 76 114 2C 4C 77 115 2D 4D 78 116 2E 4E 79 117 2F 4F 80 120 30 50 81 121 31 51 82 122 32 52 83 123 3F 53 84 124 54 85 125 55 86 126 56 87 127 57 88 130 58 89 131 59 90 132 5A 91 133 5B 92 134 5C 93 135 5D 94 136 5E 95 137 5F a b c d e f g h i j k l m n o p q r s t u v w x y z { } ~ 60 97 141 61 98 142 62 99 143 63 100 144 64 101 145 65 102 146 66 103 147 67 104 150 68 105 151 69 106 152 6A 107 153 6B 108 154 6C 109 155 6D 110 156 6E 111 157 6F 112 160 70 113 161 71 114 162 72 115 163 73 116 164 74 117 165 75 118 166 76 119 167 77 120 170 78 121 171 79 122 172 7A 123 173 7B 124 174 7C 125 175 7D 126 176 7E 127 177 7F 80 129 201 81 130 202 82 131 203 83 132 204 84 133 205 85 134 206 86 135 207 87 136 210 88 137 211 89 138 212 8A 139 213 8B 140 214 8C 141 215 8D 142 216 8E 143 217 8F 144 220 90 145 221 91 146 222 92 147 223 93 148 224 94 149 225 95 150 226 96 151 227 97 152 230 98 153 231 99 154 232 9A 155 233 9B 156 234 9C 157 235 9D 158 236 9E 159 237 9F ª «- ± ² ³ µ ¹ º» ¼ ½ ¾ 161 241 162 242 163 243 164 244 165 245 166 246 167 247 168 250 169 251 A9 170 252 AA 171 253 AB 172 254 AC 173 255 AD 174 256 AE 175 257 AF 176 260 B0 177 261 B1 178 262 B2 179 263 B3 180 264 B4 181 265 B5 182 266 B6 183 267 B7 184 270 B8 185 271 B9 186 272 BA 187 273 BB 188 274 BC 189 275 BD 190 276 BE 191 277 À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö Ø Ù Ú Û Ü Ý Þ ß A0 C0 193 301 A1 C1 194 302 A2 C2 195 303 A3 C3 196 304 A4 C4 197 305 A5 C5 198 306 A6 C6 199 307 A7 C7 200 310 A8 C8 201 311 BF 192 300 C9 202 312 CA 203 313 CB 204 314 CC 205 315 CD 206 316 CE 207 317 CF 208 320 D0 209 321 D1 210 322 D2 211 323 D3 212 324 D4 213 325 D5 214 326 D6 215 327 D7 216 330 D8 217 331 D9 218 332 DA 219 333 DB 220 334 DC 221 335 DD 222 336 DE 223 337 DF à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ø ù ú û ü ý þ ÿ 224 340 E0 225 341 E1 226 342 E2 227 343 E3 228 344 E4 229 345 E5 230 346 E6 231 347 E7 232 350 E8 233 351 E9 234 352 EA 235 353 EB 236 354 EC 237 355 ED 238 356 EE 239 357 EF 240 360 F0 241 361 F1 242 362 F2 243 363 F3 244 364 F4 245 365 F5 246 366 F6 247 367 F7 248 370 F8 249 371 F9 250 372 FA 251 373 FB 252 374 FC 253 375 FD 254 376 FE 255 377 Denne tabellen finnes på http://wwwifiuiono/inf103/info/iso8859-tableeps FF Ark 22 av 24 Programmet vårt ser slik ut: ; Dette programmet skriver ut en stor A og stopper orig x3000 ; [Startadresse] ld R0,storA ; Hent tegnet i «stora» trap x21 ; Skriv ut tegnet trap x25 ; Stopp stora fill #65 ; A end Ark 23 av 24 Vi velger «Run Program» i Run-menyen og får se vinduet Vi klikker så på Run og får se vår «A» dukke frem i konsollet: Oversikt over instruksjonene I læreboken (nærmere bestemt vedlegg A3 på side 432 i Patt&Patel-boken) finner vi alle instruksjonene med nøye forklaring over hva de gjør Ark 24 av 24