TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 2. marraskuuta 2009
|
|
- Maria Kokkonen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 ja ja TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 2. marraskuuta 2009
2 Sisällys ja
3 Sisällys ja
4 Seuraava deadline ja Vaihe D tiistai klo 10 välikielen generointi Vaihe E tiistai klo 10 koodigenerointi (ilman rekisteriallokaatiota)
5 Kääntäjän rakenne ja lähdeohjelma SELAAJA sanasjono JÄSENTÄJÄ rakennepuu VÄLIKOODIN GENEROIJA välikoodi KOHDEKOODIN GENEROIJA kohdeohjelma TARKASTAJA SOKERINPILKKOJA OPTIMOIJA OPTIMOIJA
6 Sisällys ja
7 16 yleiskäyttöistä 64-bittistä rekisteriä ja bitit 63 0 bitit 31 0 bitit 15 0 bitit 15 8 bitit RAX EAX AX AH AL 1 RBX EBX BX BH BL 2 RCX ECX CX CH CL 3 RDX EDX DX DH DL 4 RDI EDI DI DIL 5 RSI ESI SI SIL 6 RBP EBP BP BPL 7 RSP ESP SP SPL 8 R8 R8D R8W R8B 9 R9 R9D R9W R9B 10 R10 R10D R10W R10B 11 R11 R11D R11W R11B 12 R12 R12D R12W R12B 13 R13 R13D R13W R13B 14 R14 R14D R14W R14B 15 R15 R15D R15W R15B
8 RFLAGS tilabittejä ja 0 CF carry yhteenlaskun muistibitti 1 2 PB parity pariteetti 3 4 AF aux carry apumuistibitti 5 6 ZF zero oliko tulos nolla? 7 SF sign oliko tulos negatiivinen? DF direction silmukkakäskyjen suunta 11 OF overflow kokonaislukuylivuoto Tilabitit vaikuttavat ehdollisten käskyjen (esim. hypyt) toimintaan.
9 CF RFLAGS ja Kokonaislukujen yhteen- tai vähennyslasku asettaa tämän: CF=1, jos yhteenlaskusta jää muistibitti tai vähennyslasku tarvitsi lainabitin, ja CF=0 muuten. INC ja DEC eivät vaikuta CF:ään. Bitinsiirtokäskyt käyttävät CF:ää. AND, OR, XOR asettavat CF=0. STC asettaa CF=1 CLC asettaa CF=0 JC hyppää, jos CF=1 JNC hyppää, jos CF=0 Tarpeen lähinnä suurten (yli 64 bittiä) lukutyyppien käsittelyssä.
10 PF, AF, DF RFLAGS ja Tietyt operaatiot asettavat PF:n sen, mukaan onko tuloksessa parillinen (PF=1) vai pariton määrä (PF=0) bittejä. Ns. desimaaliaritmetiikka käyttää AF:ää. Tietyt ns. jononkäsittelykäskyt käyttävät DF:ää Eivät kiinnostavia kääntäjätekniikan kannalta.
11 ZF, SF, OF RFLAGS ja Laskutoimituksen tuloksen mukaan asetetaan: ZF=1, jos tulos oli nolla, ja ZF=0, jos tulos ei ollut nolla, sekä SF = tuloksen eniten merkitsevä bitti. Etumerkillisen laskutoimituksen tuloksen mukaan asetetaan lisäksi OF=1, jos tapahtui ylivuoto, ja OF=0 muuten.
12 Yleiskäyttöiset tietotyypit ja eri kokoisia bittijonoja... n = 8, 16, 32, 64 rajoitetusti myös n = joita voi tulkita eri tavoin: bittijono etumerkitön kokonaisluku (aritmetiikka modulo 2 n ) etumerkillinen kokonaisluku (kahden komplementti) binäärikoodattu kymmenjärjestelmäluku (BCD) pakattu BCD BCD-tulkinnat eivät ole kääntäjätekniikan kannalta kiinnostavia. Lisäksi voidaan käsitellä näistä muodostettuja jonoja ( strings )
13 Operandit ja imm välitön operandi (arvo on osa käskyä) voi olla 8-, 16- tai 32-bittinen. 64-bittisen välittömän operandin voi antaa rekisteriin kopiointia varten. reg käskyssä nimetty rekisteri voi olla mikä vain yleiskäyttöinen rekisteri. mem käskyssä kuvataan muistiosoite, jossa oleva muistipaikka on operandina nasmissa osoitteen ilmaiseva lauseke laitetaan aina hakasulkeisiin, esim. [EBP-16].
14 Muistipaikkaan viittaaminen ja Osoite (enintään 32 bittiä) voidaan antaa käskyssä sellaisenaan. Osoite voidaan antaa siirtymänä (enintään 32 bittiä) käskyn osoitteesta. Osoite voidaan laskea kaavalla r 1 + s r 2 + d, missä r 1 ja r 2 ovat yleiskäyttöisiä rekistereitä, d = 1, 2, 4, 8 ja d on käskyssä annettu etumerkillinen kokonaisluku (enintään 32 bittiä). (Tämä on ns. modr/m-osoitus.) Tietyt käskyt käyttävät implisiittisesti RSP- tai RBP-rekisterin arvoa osoitteena.
15 Käskyjen rakenne ja Käsky koostuu operaatiosta sekä enintään kahdesta operandista. Ensimmäinen operandi on se, minne tulos talletetaan. Jos käsky tarvitsee kaksi lähdettä (esim. yhteenlasku), ensimmäinen operandi on myös ensimmäinen lähdeoperandi. Käskyä voi edeltää etuliite.
16 Tiedonsiirtokäskyt (MOV, MOVSX, MOVZX ja MOV siirtää dataa rekisterien taikka rekisterin ja muistin välillä. siirto muistista muistiin on kielletty lähde voi olla myös välitön vakio MOV reg, imm on ainoa käsky, jolle voi antaa 64-bittisen vakion. lähteen ja kohteen tulee olla samankokoiset MOVSX ja MOVZX hakevat dataa muistista rekisteriin. Kohteen tulee olla lähdettä suurempi. MOVSX tekee etumerkkilaajennoksen. MOVZX tekee nollalaajennoksen.
17 Pinonkäsittely ja PUSH rand tarkoittaa samaa kuin SUB RSP, koko(rand) MOV rand, [RSP] POP rand tarkoittaa samaa kuin MOV rand, [RSP] ADD RSP, koko(rand) ENTER imm, 0 tarkoittaa samaa kuin PUSH RBP MOV RBP, RSP SUB ESP, imm1 LEAVE tarkoittaa samaa kuin MOV RSP, RBP POP RBP
18 Osoitearitmetiikka (LEA) ja LEA reg, mem laskee lähteenä olevan muistiosoitteen ja tallettaa ko. osoitteen rekisteriin. vrt. MOV reg, mem, joka tallettaa osoitteen tarkoittaman muistipaikan sisällön. Voidaan käyttää myös normaaliin aritmetiikkaan, esim. LEA RAX, [RBX+4*RCX+16] laskee hakasulkeissa olevan laskutoimituksen.
19 Kokonaislukujen yhteen- ja vähennyslasku ja ADD laskee yhteen ja SUB vähentää lähde ja kohde voivat olla muistipaikkoja, ei kuitenkaan yhtä aikaa lähde voi olla myös välitön vakio etumerkillinen ja etumerkitön samoilla käskyilla ADC, SBB kuten ADD ja SUB mutta ottavat huomioon CF-lipun asennon. Käytetään lähinnä isojen (>64bit) lukutyyppien laskentaan. NEG laskee ainoan operandinsa vastaluvun INC lisää ja DEC vähentää yhdellä
20 Kokonaislukujen kerto- ja jakolasku ja MUL laskee etumerkittömän kertolaskun n-bittisen laskun tulos on 2n-bittinen. 8-bittisessä laskennassa toinen operandeista on AL, tulos AX:ssä 16-bittisessä AX, tulos DX:AX:ssä 32-bittisessä EAX, tulos EDX:EAX:ssä 64-bittisessä RAX, tulos RDX:RAX:ssä IMUL laskee etumerkillisen kertolaskun myös kolmeoperandinen variantti (!) DIV laskee etumerkittömän jakolaskun, IDIV etumerkillisen jaettava 2n-bittinen, jakaja n-bittinen jaettava kuten tulos MUL-käskyssä (rdx:rax) DIV/IDIV-käskyä on aina syytä välttää jos mahdollista
21 Bittioperaatiot ja vertailu ja AND, OR, XOR, NOT tavanomaiset bitittäiset operaatiot CMP on kuin SUB paitsi ei tallenna tulosta mihinkään TEST on kuin AND paitsi ei tallenna tulosta mihinkään
22 Hypyt JMP on ehdoton hyppy kohde voi olla miten tahansa esitetty osoite Ehdollisissa hypyissä kohde esitetään aina siirtymänä nykyisestä käskystä. JO JNO JB, JC, JNAE JB, JNC, JAE JZ, JE JNZ, JNE JNA, JBE JNBE, JA JS JNS JP, JPE JNP, JPO JL, JNGE JGE, JNL JNG, JLE JNLE, JG OF=1 OF=0 CF=1 CF=0 ZF=1 ZF=0 CF=1 tai ZF=1 CF=0 ja ZF=0 SF=1 SF=0 PF=1 PF=0 SF =OF SF=OF ZF=1 tai SF =OF ZF=0 ja SF=OF ja
23 Aliohjelmakutsut CALL kohde tarkoittaa samaa kuin LEA RAX,.L1 PUSH RAX JUMP kohde L1: paitsi että se ei koske RAX-rekisteriin. RET imm tarkoittaa samaa kuin POP RAX POP BL... imm kpl... POP BL JUMP [RAX] paitsi että se ei koske RAX- eikä BL-rekistereihin. CALL ja RET ovat tehokkaampia kuin vastaavat käskyjonot, jos kutsut ja paluut ovat asianmukaisesti sisäkkäisiä. ja
24 SYSV ABI -kutsusekvenssi Paramerinvälitys: Kuusi ensimmäistä kokonaisluku- ja osoitinparametria välitetään rekistereissä RDI, RSI, RDX, RCX, R8, R9. Muut välitetään pinossa, pushaus vasemmalta oikealle -järjestyksessä. Rakenteisilla tyypeillä ja liukulukutyypeillä omat sääntönsä (ks. ABI) stdargs-funktioita kutsuttaessa AL:llä erityistehtävä (ks. ABI) Kaksi ensimmäistä kokonaisluku- ja osoitinpaluuarvoa palautetaan RAX:ssa ja RDX:ssä. Muista ks. ABI. Pinossa ensiksi mahdolliset pinoargumentit, sitten paluuosoite, sitten vanha RBP (dynaaminen linkki), sitten paikalliset muuttujat. RSP-8 on oltava 16:lla jaollinen kutsun tapahtuessa RBP, RBX ja R12 R15 ovat callee-save, eli funktion on palautettava niiden alkuperäiset arvot ennen paluutaan. ja
25 SYSV-sektiot ja Unixissa ohjelma jaetaan yleensä useaan sektioon:.text sisältää ohjelmakoodin.data sisältää alustetut globaalit muuttujat.bss sisältää nollaksi alustetut globaalit muuttujat.rodata sisältää alustettuja vakioita
26 Sisällys ja
27 Rekisteristö ja 256 yleiskäyttöistä 64-bittistä rekisteriä $0 $255. Osa loppupään rekistereistä on globaaleja. Osa alkupään rekistereistä on lokaaleja. Loput eivät ole käytössä. Jos tällaista rekisteriä käytetään, se ja sen alla olevat rekisterit muuttuvat lokaaleiksi. Lisäksi 32 erityisrekisteriä nimeltään ra rzz.
28 Käskyjen rakenne ja Käskyt ovat muotoa OP X, Y, Z. X on yleensä kohde, Y ja Z lähteitä. X, Y ja Z ovat rekistereitä. Z voi myös olla tavun kokoinen välitön vakio.
29 Tiedonsiirto ja LDx X, Y, Z lataa rekisteriin X muistiosoitteesta Y+Z löytyvän etumerkillisen tiedon. LDxU lataa rekisteriin X muistiosoitteesta Y+Z löytyvän etumerkittömän tiedon. LDHT X, Y, Z lataa rekisterin X ylimpään 32 bittiin osoitteesta Y+Z löytyvän tiedon ja nollaa X:n alimmat 32 bittiä. LDA X, Y, Z lataa rekisteriin X muistiosoitteen Y+Z. STx X, Y, Z tallettaa rekisterin X etumerkillisen sisällön muistiosoitteeseen Y+Z. STxU X, Y, Z tallettaa rekisterin X etumerkittömän sisällön muistiosoitteeseen Y+Z. STHT X, Y, Z tallettaa rekisterin X ylimmät 32 bitit muistiosoitteeseen Y+Z. STCO X, Y, Z tallettaa tavuvakion X osoitteen Y+Z tarkoittamaan 64-bittiseen muistipaikkaan. x=b,w,t,o sen mukaan onko tiedon koko 8, 16, 32, 64 bittiä.
30 Aritmetiikka ja ADD X, Y, Z suorittaa etumerkillisen laskutoimituksen X = Y + Z. SUB X, Y, Z suorittaa etumerkillisen laskutoimituksen X = Y Z. MUL X, Y, Z suorittaa etumerkillisen laskutoimituksen X = Y Z. DIV X, Y, Z suorittaa etumerkillisen laskutoimituksen X = Y/Z ja tallettaa jakojäännöksen erityisrekisteriin rr. ADDU, SUBU kuten ADD ja SUB, etumerkittömänä. MULU X, Y, Z suorittaa etumerkittömän laskutoimituksen rh : X = Y Z. DIVU X, Y, Z suorittaa etumerkittömän laskutoimituksen X = rd : Y/Z ja tallettaa jakojäännöksen erityisrekisteriin rr. Lisäksi naddu X, Y, Z suorittaa etumerkittömän laskutoimituksen X = n Y + Z, missä n = 2, 4, 8, 16. NEG(U) X, Y, Z laskee X = Y Z; Y:n on oltava vakio.
31 Vertailu ja bitittäiset ja CMP X, Y, Z tallettaa X:ään 1, jos Y < Z, 0, jos Y = Z, +1, jos Y > Z. AND, OR, XOR tavanomaiset ANDN, ORN ovat and-not ja or-not NAND, NOR, NXOR ovat not-and, not-or, not-xor
32 Hypyt ja JMP on ehdoton hyppy GO X, Y, Z on tavanomainen aliohjelmakutsu: X:ään tallennetaan paluuosoite ja Y + Z on kohdeosoite. BN X, L: jos X on negatiivinen, hyppää L:ään BZ X, L: jos X on nolla, hyppää L:ään BP X, L: jos X on positiivinen, hyppää L:ään BNN X, L: jos X ei ole negatiivinen, hyppää L:ään BNZ X, L: jos X ei ole nolla, hyppää L:ään BNP X, L: jos X ei ole positiivinen, hyppää L:ään
33 Aliohjelmakutsut rekisteri-ikkunan avulla ja PUSHJ $X, L: piilota rekisterit $0:sta $X:ään (jolloin rekisteri $(X+!) muuttuu rekisteriksi $0), tallenna paluuosoite rj:hin ja hyppää L:ään. PUSHGO $X, Y, Z: kuten PUSHJ, mutta hypätään Y+Z:aan POP X, Y, Z: poista käytöstä kaikki X:ää korkeammat paikalliset rekisterit palauta viimeisimmän PUSHJ/PUSHGO:n piilottamat rekisterit niin, että $0 $X muuttuvat piilotettuja rekistereitä seuraaviksi rekistereiksi.
34 Sisällys ja
35 Seuraava deadline ja Vaihe D tiistai klo 10 välikielen generointi Vaihe E tiistai klo 10 koodigenerointi (ilman rekisteriallokaatiota)
Eloisuusanalyysi. TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 16. marraskuuta 2009 TIETOTEKNIIKAN LAITOS. Eloisuusanalyysi.
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 16. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe E tiistai 1.12. klo 10 koodigenerointi (ilman rekisteriallokaatiota)
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 17. marraskuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 17. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe E tiistai 1.12. klo 10 koodigenerointi (ilman ta) Vaihe
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 9. marraskuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 9. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe D tiistai 10.11. klo 10 välikielen generointi Vaihe E tiistai
LisätiedotLOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100
Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 13. lokakuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 13. lokakuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe C tiistai 20.10. klo 10 kielivirheiden diagnoosi, sokerin
LisätiedotMuita rekisteriallokaatiomenetelmiä
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 23. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe E tiistai 1.12. klo 10 koodigenerointi (ilman rekisteriallokaatiota)
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 27. lokakuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 27. lokakuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe D tiistai 10.11. klo 10 välikielen generointi Kääntäjän rakenne
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 2. Lukujen esittäminen ja aritmetiikka 2.1 Kantajärjestelmät ja lukujen esittäminen Käytettävät lukujoukot: Luonnolliset luvut IN = {0,1,2,3,... } Positiiviset kokonaisluvut
LisätiedotLaitteistonläheinen ohjelmointi
Laitteistonläheinen ohjelmointi 4 op Luennoija: Pertti Lehtinen Luennot: Perjantai 12-14 TB104 Esitiedot: Mikroprosessorit Perusohjelmointikurssi Kurssin osat: luennot, harjoitustyö, tentti Materiaali:
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 26. lokakuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 26. lokakuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe D tiistai 10.11. klo 10 välikielen generointi Kääntäjän rakenne
LisätiedotOngelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla
Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla ohjelmoida useita komponenteiltaan ja rakenteeltaan
LisätiedotC = P Q S = P Q + P Q = P Q. Laskutoimitukset binaariluvuilla P -- Q = P + (-Q) (-Q) P Q C in. C out
Digitaalitekniikan matematiikka Luku ivu (2).9.2 Fe C = Aseta Aseta i i = n i > i i i Ei i < i i i Ei i i = Ei i i = i i -- On On On C in > < = CI CO C out -- = + (-) (-) = + = C + Digitaalitekniikan matematiikka
LisätiedotLukujärjestelmät. Digitaalitekniikan matematiikka Luku 9 Sivu 3 (26) Lukujärjestelmät ja lukujen esittäminen Fe
Digitaalitekniikan matematiikka Luku 9 Sivu 3 (26) Lukujärjestelmät ja lukujen esittäminen.9.2 Fe Lukujärjestelmät Kymmen- eli desimaalijärjestelmä: kantaluku perinteisesti käytetty ja tuttu numerot,,
LisätiedotMerkitse kertolasku 3 3 3 3 potenssin avulla ja laske sen arvo.
13 Luvun potenssi Kertolasku, jonka kaikki tekijät ovat samoja, voidaan merkitä lyhyemmin potenssin avulla. Potenssimerkinnässä eksponentti ilmaisee, kuinka monta kertaa kantaluku esiintyy tulossa. Potenssin
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne
LisätiedotLaitteistonläheinen ohjelmointi
Laitteistonläheinen ohjelmointi 4 op Luennoija: Pertti Lehtinen Harjoitustyö: Mikko Vulli Esituedot: Mikroprosessorit Perusohjelmointikurssi Kurssin osat: luennot, harjoitustyö, tentti Materiaali: luentomoniste
LisätiedotTietokonearitmetiikka
Tietokoneen rakenne Luento 6 Tietokonearitmetiikka Stallings: Ch 9 Kokonaislukuesitys Kokonaislukuaritmetiikka Liukulukuesitys Liukulukuaritmetiikka Luento 6-1 ALU: Aritmeettis-Looginen Yksikkö ALU = Aritmetic
LisätiedotKäskykannat. Tietokoneen rakenne. Ch [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC. Luento 7-1
Tietokoneen rakenne Luento 7 Käskykannat Ch 10-11 [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC Luento 7-1 Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan Käskyn
LisätiedotLuento 2 (verkkoluento 2) Ttk-91 järjestelmä
Luento 2 (verkkoluento 2) Ttk-91 järjestelmä Ttk-91 laitteisto Tiedon sijainti Muistitilan käyttö Ttk-91 konekieli Tiedon osoitus ttk-91:ssä Indeksointi, taulukot, tietueet 1 Suorituksenaikainen suorittimen
LisätiedotOngelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,
Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten, että se pystyy suorittamaan kaikki mahdolliset algoritmit?
LisätiedotTieto ja sen osoite (3) Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Osoitinmuuttujat. Tieto ja sen osoite (5)
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Tieto ja sen osoite (3) X DC LOAD, =X LOAD R2, X int x =; symbolin X arvo muuttujan X arvo
LisätiedotTietokonearitmetiikka
Luento 6 ALU: Aritmeettis-Looginen Yksikkö Tietokonearitmetiikka Stallings: Ch 9 Kokonaislukuesitys Kokonaislukuaritmetiikka Liukulukuesitys Liukulukuaritmetiikka Luento 6-1 ALU = Aritmetic Logic Unit
LisätiedotTKT-3201 Tietokonearkkitehtuuri 2
TKT-3201 Tietokonearkkitehtuuri 2 Luku 2: Käskyt: Tietokoneen kieli Tietokonetekniikka #2 Käskykanta Käytettävissä olevien käskyjen joukko Erilaisilla prosesoreilla erilainen käskykanta Mutta paljon yhteisiä
LisätiedotTietokoneen rakenne Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan
Käskykannat Ch 10-11 [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC Luento 7 Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan Käskyn suoritus muodostuu vaiheista, joita
LisätiedotKonekielinen ohjelmointi
Konekielinen ohjelmointi Antti-Juhani Kaijanaho 9. tammikuuta 2007 1 Konekielet Konekielellä tarkoitetaan sitä kieltä, jota tietokone ymmärtää suoraan. Koska kaikki nykytietokoneet perustuvat samaan ideaan
LisätiedotLuento 7: Käskykannat Tietokoneen rakenne / 2006 / Teemu Kerola 9/25/2006
Tietokoneen rakenne Luento 7 Käskykannat Ch 10-11 [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC Luento 7-1 Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan Käskyn
LisätiedotMonipuolinen esimerkki
Monipuolinen esimerkki Lopuksi monipuolinen esimerkki, jossa ohjelmisto koostuu pääohjelmasta ja kahdesta aliohjelmasta, joista toinen on proseduuri ja toinen funktio. Funktio Sqrt(int n): int Sqrt(int
LisätiedotTietokonearitmetiikka
Tietokoneen rakenne Luento 6 Tietokonearitmetiikka (Computer Arithmetic) Stallings: Ch 9 Kokonaislukuesitys Kokonaislukuaritmetiikka Liukulukuesitys Liukulukuaritmetiikka Luento 6-1 ALU: Aritmeettis-Looginen
LisätiedotSilmukkaoptimoinnista
sta TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. joulukuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe F maanantai 14.12. klo 12 rekisteriallokaatio Arvostelukappale
LisätiedotTietokonearitmetiikka
Luento 6 ALU: Aritmeettis-Looginen Yksikkö Tietokonearitmetiikka (Computer Arithmetic) Stallings: Ch 9 Kokonaislukuesitys Kokonaislukuaritmetiikka Liukulukuesitys Liukulukuaritmetiikka Luento 6-1 ALU =
LisätiedotJakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI)
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Muuttujan X osoite on 230 Muuttujan X arvo on 12 Symbolin X arvo on 230 symbolit ovat yleensä
LisätiedotJakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI)
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Muuttujan X osoite on 230 Muuttujan X arvo on 12 Symbolin X arvo on 230 Tieto ja sen osoite
LisätiedotAktivaatiotietue. Yleiskäsite funktio (aliohjelma) -mekanismin tarvitsemille tiedoille. Kehysosoitin (%fp) missä tiedot ovat
Aktivaatiotietue Yleiskäsite funktio (aliohjelma) -mekanismin tarvitsemille tiedoille Parametrit ja paluuarvo Paluuosoite Linkkitiedot Kehysosoitin (%fp) missä tiedot ovat Missä edellisen tiedot ovat (palattaessa
LisätiedotLuento 4 (verkkoluento 4) Aliohjelmien toteutus
Luento 4 (verkkoluento 4) Aliohjelmien toteutus Tyypit, Parametrit Aktivaatiotietue (AT) AT-pino, rekursio 1 Aliohjelmatyypit Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri Parametrit
LisätiedotLuento 4 Aliohjelmien toteutus
Luento 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotJakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotKappale 20: Kantaluvut
Kappale 20: Kantaluvut 20 Johdanto: Kantaluvut... 328 Kantalukujen syöttäminen ja muuntaminen... 329 Matemaattiset toiminnot Hex- ja Bin-luvuilla... 330 Bittien vertaileminen ja manipulointi... 331 Huom!
LisätiedotLuento 2 (verkkoluento 2) Ttk-91 järjestelmä
Luento 2 (verkkoluento 2) Ttk-91 järjestelmä Käskyjen nouto- ja suoritussykli Ttk-91 laitteisto Tiedon sijainti Muistitilan käyttö Ttk-91 konekieli Tiedon osoitus ttk-91:ssä Indeksointi, taulukot, tietueet
LisätiedotTIE448 Kääntäjätekniikka, syksy 2009. Antti-Juhani Kaijanaho. 7. joulukuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 7. joulukuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe F maanantai 14.12. klo 12 rekisteriallokaatio Arvostelukappale
LisätiedotLuento 4 (verkkoluento 4) Aliohjelmien toteutus
Luento 4 (verkkoluento 4) Aliohjelmien toteutus Tyypit, Parametrit Aktivointitietue (AT) AT-pino, rekursio 1 Aliohjelmatyypit Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri Parametrit
LisätiedotJakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotHarjoitustyö: virtuaalikone
Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman
LisätiedotLuento 3 (verkkoluento 3) Ttk-91 konekielinen ohjelmointi. Ohjelman esitysmuoto Konekielinen ohjelmointi ttk-91:llä (Titokone, TitoTrainer)
Luento 3 (verkkoluento 3) Ttk-91 konekielinen ohjelmointi Ohjelman esitysmuoto Konekielinen ohjelmointi ttk-91:llä (Titokone, TitoTrainer) 1 Suorituksenaikainen suorittimen ja muistin sisältö muisti suoritin
Lisätiedot13. Loogiset operaatiot 13.1
13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.
Lisätiedotx 7 3 4x x 7 4x 3 ( 7 4)x 3 : ( 7 4), 7 4 1,35 < ln x + 1 = ln ln u 2 3u 4 = 0 (u 4)(u + 1) = 0 ei ratkaisua
Mallivastaukset - Harjoituskoe E E a) x 7 3 4x x 7 4x 3 ( 7 4)x 3 : ( 7 4), 7 4,35 < 0 x 3 7 4 b) 0 / x + dx = 0 ln x + = ln + ln 0 + = ln 0 Vastaus: ln c) x 4 3x 4 = 0 Sijoitetaan x = u Tulon nollasääntö
LisätiedotLUKUTEORIA johdantoa
LUKUTEORIA johdantoa LUKUTEORIA JA TODISTAMINEN, MAA11 Lukuteorian tehtävä: Lukuteoria tutkii kokonaislukuja, niiden ominaisuuksia ja niiden välisiä suhteita. Kokonaislukujen maailma näyttää yksinkertaiselta,
LisätiedotAliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
Lisätiedot13. Loogiset operaatiot 13.1
13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.
LisätiedotTIES325 Tietokonejärjestelmä. Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos
TIES325 Tietokonejärjestelmä Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos Kevät 2008 Luku 4 Tietokoneen sisäinen toiminta Edellisisää osioiss aon tarkasteltu tietokoneen kehittymistä ja sen
Lisätiedot1. Yleistä. 2. Ominaisuudet. 3. Liitännät
1. Yleistä SerIO on mittaus ja ohjaustehtäviin tarkoitettu prosessorikortti. Se voi ohjemistosta riippuen toimia itsenäisenä yksikkönä tai tietokoneen ohjaamana. Jälkimmäisessä tapauksessa mittaus ja ohjauskomennot
Lisätiedot2 Konekieli, aliohjelmat, keskeytykset
ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä
LisätiedotOhjelmoijan binaarialgebra ja heksaluvut
Paavo Räisänen Ohjelmoijan binaarialgebra ja heksaluvut www.ohjelmoinaan.net Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei kaupallisissa tarkoituksissa. Kuitenkaan omille nettisivuille opasta
LisätiedotJakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotLuento 4 Aliohjelmien toteutus
Luento 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotPaavo Räisänen. Ohjelmoijan binaarialgebra ja heksaluvut. www.ohjelmoimaan.net
Paavo Räisänen Ohjelmoijan binaarialgebra ja heksaluvut www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei kaupallisissa tarkoituksissa. Kuitenkaan omille nettisivuille opasta
LisätiedotLuento 4 Aliohjelmien toteutus
Luento 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotJakso 4 Aliohjelmien toteutus. Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotVerilogvs. VHDL. Janne Koljonen University of Vaasa
Verilogvs. VHDL Janne Koljonen University of Vaasa Sälää Huom! Verilogistauseita versioita: 1995, 2001 ja 2005. Kommentit Javasta tutut // ja /* */ ovat kommenttimerkkejä. Case sensitivity Isot ja pienet
LisätiedotAliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus
Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotLuento 2 TTK-91 tietokone ja sen KOKSI simulaattori
Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori Miksi TTK-91? TTK-91 rakenne ja käskykanta-arkkitehtuuri Mikä on simulaattori? Miten TTK-91 ohjelmia suoritetaan simulaattorissa? 1 Miksi konekieltä?
LisätiedotLuento 2 TTK-91 tietokone ja sen KOKSI simulaattori
Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori Miksi TTK-91? TTK-91 rakenne ja käskykanta-arkkitehtuuri Mikä on simulaattori? Miten TTK-91 ohjelmia suoritetaan simulaattorissa? 1 Miksi konekieltä?
LisätiedotJäsennysalgoritmeja. TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 29. syyskuuta 2009 TIETOTEKNIIKAN LAITOS. Jäsennysalgoritmeja
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 29. syyskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe B tiistai 6.10. klo 10 selaaja ja jäsentäjä toimivat Kääntäjän
LisätiedotKombinatorisen logiikan laitteet
Kombinatorisen logiikan laitteet Kombinatorinen logiikka tarkoittaa logiikkaa, jossa signaali kulkee suoraan sisääntuloista ulostuloon Sekventiaalisessa logiikassa myös aiemmat syötteet vaikuttavat ulostuloon
LisätiedotTIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 16. toukokuuta 2011
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 16. toukokuuta 2011 Sisällys engl. random-access machines, RAM yksinkertaistettu nykyaikaisen (ei-rinnakkaisen)
LisätiedotLuento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)
Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Tieto ja sen osoite (3) X DC 12 LOAD R1, =X LOAD R2, X int x =12; symbolin X arvo muuttujan
LisätiedotSulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä.
Sulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä. On arvioitu, että maailmassa on tällä hetkellä enemmän sulautettuja
Lisätiedot1. Keskusyksikön rakenne
1. Keskusyksikön rakenne Kuvassa on esitelty TTK-91 esimerkkikoneen keskusyksikkö. Oikeiden tietokoneiden keskusyksiköt ovat luonnollisesti monimutkaisempia, mutta tämä riittää oikein mainiosti asian havainnollistamiseen.
LisätiedotLuento 4 Aliohjelmien toteutus. Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio
Luento 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet aliohjelma, proseduuri parametrit funktio parametrit,
LisätiedotDigitaalitekniikan matematiikka Luku 10 Sivu 1 (14) Lukujärjestelmämuunnokset. 2 s s
Digitaalitekniikan matematiikka Luku 10 Sivu 1 (14) k 10 2 10 2 s 10 10 8 10 16 10 2 10 2 s 2 8 8 2 2 16 16 2 Digitaalitekniikan matematiikka Luku 10 Sivu 2 (14) Johdanto Tässä luvussa perustellaan, miksi
LisätiedotJakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori
Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori Miksi TTK-91? TTK-91:n rakenne ja käskykanta-arkkitehtuuri KOKSI-simulaattori 1 Miksi konekieltä? Koneen toiminnan ymmärtäminen Oman ohjelman toiminnan
LisätiedotAlgoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
LisätiedotJakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori
Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori Miksi TTK-91? TTK-91:n rakenne ja käskykanta-arkkitehtuuri KOKSI-simulaattori 1 Miksi konekieltä? Koneen toiminnan ymmärtäminen Oman ohjelman toiminnan
LisätiedotJakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI)
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Tiedon sijainti suoritusaikana Muistissa (=keskusmuisti) iso hidas Rekisterissä pieni nopea
LisätiedotJakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI)
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Tiedon sijainti suoritusaikana Muistissa (=keskusmuisti) iso hidas Rekisterissä pieni nopea
LisätiedotLuento 2 TTK-91 tietokone ja sen KOKSI simulaattori
Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori Miksi TTK-91? TTK-91 rakenne ja käskykanta-arkkitehtuuri Mikä on simulaattori? Miten TTK-91 ohjelmia suoritetaan simulaattorissa? 1 Miksi konekieltä?
LisätiedotHuom! (5 4 ) Luetaan viisi potenssiin neljä tai viisi neljänteen. 7.1 Potenssin määritelmä
61 7.1 Potenssin määritelmä Potenssi on lyhennetty merkintä tulolle, jossa kantaluku kerrotaan itsellään niin monta kertaa kuin eksponentti ilmaisee. - luvun toinen potenssi on nimeltään luvun neliö o
LisätiedotSalausmenetelmät. Veikko Keränen, Jouko Teeriaho (RAMK, 2006)
Salausmenetelmät Veikko Keränen, Jouko Teeriaho (RAMK, 2006) LUKUTEORIAA JA ALGORITMEJA 3. Kongruenssit à 3.1 Jakojäännös ja kongruenssi Määritelmä 3.1 Kaksi lukua a ja b ovat keskenään kongruentteja (tai
LisätiedotTietokoneen rakenne: Harjoitustyö. Motorola MC68030 -prosessori
kevät 2004 TP02S-D Tietokoneen rakenne: Harjoitustyö Motorola MC68030 -prosessori Työn valvojat: Seppo Haltsonen Pasi Lankinen RAPORTTI 13.5.2004 Sisällysluettelo sivu Tiivistelmä... 1 Lohkokaavio... 2
LisätiedotSalausmenetelmät LUKUTEORIAA JA ALGORITMEJA. Veikko Keränen, Jouko Teeriaho (RAMK, 2006) 3. Kongruenssit. à 3.4 Kongruenssien laskusääntöjä
Salausmenetelmät Veikko Keränen, Jouko Teeriaho (RAMK, 2006) LUKUTEORIAA JA ALGORITMEJA 3. Kongruenssit à 3.4 Kongruenssien laskusääntöjä Seuraavassa lauseessa saamme kongruensseille mukavia laskusääntöjä.
LisätiedotLuento 2 TTK-91 tietokone ja sen KOKSI simulaattori. Miksi konekieltä? Tietokone TTK-91. Miksi ei oikeaa konekieltä?
Luento 2 tietokone ja sen KOKSI simulaattori Miksi? rakenne ja käskykanta-arkkitehtuuri Mikä on simulaattori? Miten ohjelmia suoritetaan simulaattorissa? Miksi konekieltä? Koneen toiminnan ymmärtäminen
LisätiedotDigitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Virheen havaitseminen ja korjaus
Digitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Digitaalitekniikan matematiikka Luku 13 Sivu 2 (10) Johdanto Tässä luvussa esitetään virheen havaitsevien ja korjaavien koodaustapojen perusteet ja käyttösovelluksia
Lisätiedota k+1 = 2a k + 1 = 2(2 k 1) + 1 = 2 k+1 1. xxxxxx xxxxxx xxxxxx xxxxxx
x x x x x x x x Matematiikan johdantokurssi, syksy 08 Harjoitus, ratkaisuista Hanoin tornit -ongelma: Tarkastellaan kolmea pylvästä A, B ja C, joihin voidaan pinota erikokoisia renkaita Lähtötilanteessa
Lisätiedot5. Laskutoimitukset eri lukujärjestelmissä
5. Laskutoimitukset eri lukujärjestelmissä Lukujen esitykset eri lukujärjestelmissä Muunnokset lukujärjestelmien välillä Laskutoimitukset eri lukujärjestelmissä. 5.1. Muunnokset lukujärjestelmien välillä
LisätiedotTeemun juustokakku Rekisterien, välimuistin, muistin, levymuistin ja magneettinauhan nopeudet suhteutettuna juuston hakuaikaan juustokakkua tehdessä?
Tietokonejärjestelmän rakenne ttk-91 ja sillä ohjelmointi 27.1.2011 Tietokone suoritin (CPU) väylä tai väylät laiteohjaimet muiden koneiden kanssa Ethernet, modeemi,... laitteiden kanssa Levy, DVD, CD,
LisätiedotLUKUJA, DATAA KÄSITTELEVÄT FUNKTIOT JA NIIDEN KÄYTTÖ LOGIIKKAOHJAUKSESSA
LUKUJA, DATAA KÄSITTELEVÄT FUNKTIOT JA NIIDEN KÄYTTÖ LOGIIKKAOHJAUKSESSA Tavallisimmin lukuja käsittelevien datasanojen tyypiksi kannattaa asettaa kokonaisluku 16 bitin INT, jonka vaihtelualueeksi tulee
LisätiedotLAUSEKKEET JA NIIDEN MUUNTAMINEN
LAUSEKKEET JA NIIDEN MUUNTAMINEN 1 LUKULAUSEKKEITA Ratkaise seuraava tehtävä: Retkeilijät ajoivat kahden tunnin ajan polkupyörällä maantietä pitkin 16 km/h nopeudella, ja sitten vielä kävelivät metsäpolkua
Lisätiedotkäyttävät X86-konekieltä ja mobiililaitteet useimmiten ARMkonekieltä. myös käskykannaksi tai arkkitehtuuriksi.
Koodi Konekielen kiemurat: Portti tietokoneen sielunelämään Konekieli on aina kuulostanut hohdokkaalta tietokoneharrastajan korvaan onhan se laitteenläheisin taso, jolle ohjelmoija pääsee. Vaikka konekieli
LisätiedotJohdanto. TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 8. syyskuuta 2009 TIETOTEKNIIKAN LAITOS. Johdanto. Luennoija.
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. syyskuuta 2009 assistentti Antti-Juhani Kaijanaho matematiikan opiskelijaksi JY:oon 1997 tietotekniikan LuK 2001 (tutkielma
LisätiedotAlgoritmit 1. Demot Timo Männikkö
Algoritmit 1 Demot 1 25.-26.1.2017 Timo Männikkö Tehtävä 1 (a) Algoritmi, joka laskee kahden kokonaisluvun välisen jakojäännöksen käyttämättä lainkaan jakolaskuja Jaettava m, jakaja n Vähennetään luku
LisätiedotFile: C:\tmp\tmp\mch.txt 24.7.2001, 9:37:46. JUKKA LAAKKONEN, OH1NPK ORIKEDONKATU 16 FIN-20380 TURKU May 18, 1995
RYYDLAB OHJE JUKKA LAAKKONEN, OH1NPK ORIKEDONKATU 16 FIN-20380 TURKU May 18, 1995 MOBIRA/SALORA KANAVALOGIIKAN ASENNUS JA OHJELMOINTI YLEISTÄ Kortti on suunniteltu käytettäväksi käyttölaitteen ja synteesin
LisätiedotJuuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty
Juuri Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty 7.5.08 Kertaus K. a) Polynomi P() = + 8 on jaollinen polynomilla Q() =, jos = on polynomin P nollakohta, eli P() = 0. P() = + 8 = 54 08 +
Lisätiedotn. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa.
MAA 12 kertaus Funktion kuvaaja n. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa. Funktion nollakohta on piste, jossa f () = 0, eli kuvaaja leikkaa -akselin. Kuvaajan avulla
LisätiedotSISÄLLYS - DIGITAALITEKNIIKKA
SISÄLLYS - DIGITAALITEKNIIKKA Digitaalitekniikan perusteita...2 Bitti (bit)...2 Tavu (bytes)...2 Sana (word)...2 Yksiköt...2 Binääri järjestelmän laskutapa...2 Esimerkki: Digikuvan siirron kestoaika...2
LisätiedotTietokoneen toiminta. Juhani Merilinna
Tietokoneen toiminta Juhani Merilinna 27.3.2004 Tietokoneiden historia...4 Laskukoneiden kehitys... 4 Ensimmäiset tietokoneet...4 2. sukupolvi... 4 3. sukupolvi... 4 4. sukupolvi... 5 Työasemien historiaa...5
LisätiedotMuunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja
sekä muita TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 19. kesäkuuta 2013 Sisällys Chomskyn hierarkia (ja vähän muutakin) kieli säännöllinen LL(k) LR(1) kontekstiton
LisätiedotJakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset
Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset 1 Tiedon sijainti suoritusaikana Muistissa (=keskusmuisti) iso hidas Rekisterissä pieni nopea
Lisätiedot3. Kongruenssit. 3.1 Jakojäännös ja kongruenssi
3. Kongruenssit 3.1 Jakojäännös ja kongruenssi Tässä kappaleessa esitellään kokonaislukujen modulaarinen aritmetiikka (ns. kellotauluaritmetiikka), jossa luvut tyypillisesti korvataan niillä jakojäännöksillä,
LisätiedotLineaarialgebra ja matriisilaskenta II. LM2, Kesä /141
Lineaarialgebra ja matriisilaskenta II LM2, Kesä 2012 1/141 Kertausta: avaruuden R n vektorit Määritelmä Oletetaan, että n {1, 2, 3,...}. Avaruuden R n alkiot ovat jonoja, joissa on n kappaletta reaalilukuja.
LisätiedotTyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005
Tyyppejä ja vähän muutakin TIEA341 Funktio ohjelmointi 1 Syksy 2005 Viime luennolla... Haskellin alkeita pääasiassa Hello World!... ja muita tutunoloisia ohjelmia Haskellilla Haskellin voima on kuitenkin
Lisätiedot