Laiteläheinen C-kieli, yleistä
|
|
- Eveliina Salminen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Laiteläheinen C-kieli, yleistä PUNOMO NETWORKS OY pva Johdanto Mikroprosessori, CPU, Central Prosessing Unit on komponentti, jonka toiminta on ohjattavissa muistiin tallennetuilla käskyillä. Käskyt peräjälkeen toteutettuina muodostavat tietokoneohjelman. CPU voi käskyjen mukaan: - siirrellä tietoa - suorittaa yksinkertaista aritmetiikka ja loogisia operaatioita - tehdä päätöksiä (if-else) CPU ymmärtää vain juuri sille suunniteltua konekieltä, oikeastaan vain ykkösiä ja nollia. Ihmiselle taas luonnollinen, puhuttu ja kirjoitettu, kieli on paras kommunikointiväline. Miten nuo saadaan kohtaamaan? Tietokone ei tiedä yhtään mitään, se osaa vain laskea. Ja kun se ei tunne muita numeroita kuin ykkösen ja nollan, sen laskentataitokin on aika suppea. Pelkkää hyvin yksinkertaista aritmetiikkaa ja loogista päättelyä. Mutta kun se tekee sitä niin nopeasti, miljoonia laskuja sekunnissa. Siinä on se juju. Miten korkean tason kielestä konekoodia? Assembler on ohjelma, joka kääntää symbolisesta konekielestä (assembly) konekoodia ennen ohjelman ajoa. Tulkki, Interpreter on ohjelma, joka tulkitsee ihmisläheisen ohjelman käskyjä rivi kerrallaan ohjelman ajon aikana. Tästä seuraa, että ohjelman ajo on hidasta. Hyvä tulkkiohjelma on iso ja monimutkainen, joten se tarvitsee paljon muistia. Python on poikkeus. Kääntäjä, Compiler on ohjelma, jonka avulla lähdekoodi käännetään ennen ohjelman ajoa toimivaksi ajokelpoiseksi koodiksi. Koodista tulee nopeaa, koska CPU osaa ajaa suoraan käännettyä koodia. Kääntäjäohjelma on iso ja monimutkainen, mutta sitä ei tarvita enää ohjelman ajon aikana. Itse ohjelma ei tarvitse ajon aikana paljon muistia. C- ja C++ toimivat näin. 1
2 Mikä on ohjelmointikieli? Ohjelmointikieli on ikään kuin silta ihmisen abstraktista ajattelusta tietokoneen konkreettiseen numeroiden maailmaan. Ihmisen (tietokonekielen) käsitteistä tosi, true ja epätosi, false, kääntäjäohjelma luo tietokoneelle 1 ja 0. Niiden perusteella kone ikään kuin päättelee mitä tehdä, jatkaako lukujen käsittelyä seuraavasta ykkösnollajonosta vai hypätäkö ohjelmassa eteen/taaksepäin. Ohjelmointikielen määritykseen on monta tapaa; Opettaja Ohjelmointikieli on ohjelmien esittämiseen tarkoitettu, prosessorikohtaiseen konekieleen käännettävissä oleva kieli. Tietosanakirja Ohjelmointikieli on joukko käsitteitä, jolla ohjelmoija määrittelee algoritmin rajaamat suoritettavat tehtävät. Ohjelmoija Ohjelmointikieli on työkalu, joiden avulla ohjelmoija miettii, mitä on mahdollista tehdä ja mitä ei. Ohjelmointikieli on väline, jolla ihminen kertoo tietokoneelle mitä se tulee tehdä. Ihmisen käsitteistä tosi ja epätosi eli true ja false, kääntäjäohjelma luo tietokoneelle ykkösen ja nollan eli 1 ja 0. Niiden perusteella kone ikään kuin päättelee mitä tehdä, jatkaako lukujen käsittelyä seuraavasta ykkösnollajonosta vai hypätäkö ohjelmassa eteen/taaksepäin. Laiteläheisen ohjelmointikielen tulee olla: Lähellä konetta Ohjelmointikielen tulee toimia 'lähellä konetta' siten, että CPU:n eri rekistereitä ja oheispiirejä (liitäntäpiirejä) voidaan manipuloida bittitasolla. Lähellä ohjelmoijaa Ohjelmointikielen tulee toimia 'lähellä ohjelmoijaa', eli ohjelmoijan kannalta sen tulee olla ikään kuin oikea ihmisen kommunikaatioonsa käyttämä kieli. Siis mielellään lähellä yleisesti puhuttua/kirjoitettua (englannin) kieltä. C-kielen ominaisuuksia - se on tehokas, eli C-kääntäjä tekee tiivistä ja nopeaa koodia - se on siirrettävä, eli koodi toimii eri prosessoriympäristöissä (eri tietokoneissa). Siitä nimitys "kannettava assembly". - C-kääntäjiä löytyy hyvin usealle prosessorille, sekä kaupallisia, että ilmaisia - lausekielinen, korkean tason yleisluonteinen kieli, joten se on helppo oppia - laiteläheinen, päästään operoimaan CPU:n ja oheispiirien rekistereitä bittitasolla. - se on käännettävä kieli. Kääntäminen tapahtuu kääntäjä-ohjelmalla ennen ohjelman käyttöä. C on ns. rakenteinen ohjelmointikieli C-kieli sopii jäsentävään suunnitteluun eli rakenteiseen, strukturoituun ohjelmointiin. Ohjelma on helpompi kehittää kun monimutkaiset ongelmat jaetaan ensin pienempiin palasiin. Se mahdollistaa valmiiden, käytännössä testattujen funktioiden uusiokäytön. Esimerkkinä vaikka LCD-näytön ohjaus tai Raspin GPIO-pinnien käsittely. Rakenteinen ohjelma on helpompi korjata, koska ohjelmavirheet, bugit, paikallistetaan tavallisesti yhteen funktioon. Virheitä ei tarvitse etsiä koko koodista. Ohjelmasta tulee samalla hier'arkkinen, kun funktiot kutsuvat toisiaan. Joitain funktioita käytetään anturien lukemiseen, toista tulosten laskentaan, kolmatta toimilaitteen ohjaamiseen, jne. 2
3 Miksi sulautetut järjestelmät ohjelmoidaan C-kielellä? Pienissä systeemeissä käytetään pienitehoisia mikro-ohjaimia, joissa on vähän muistia ja joiden päätehtävä on ohjata ja valvoa jonkun elektronisen laitteen toimintaa. Siksi käytettävissä olevan ohjelmointikielen tulee olla laiteläheistä. Valittavan ohjelmointikielen tulee olla yleinen eli paljon käytetty ja siksi myös normioitu, standardoitu. Suositulle kielelle löytyy tarvittaessa apua; so. koulutusta, kirjallisuutta, kursseja, työkaluja, valmiita ohjelmia, www-osoitteita, keskustelupalstoja netissä, jne. Mielellään sen tulee olla sellainen, että se on helppo oppia ja kuitenkin tehokas. Tärkeintä tietenkin on, että käytettävälle mikro-ohjaimelle löytyy valittavan kielen kääntäjäohjelma ja muita työkaluja. Myös tulevaisuudessa. Sulautetut ja C-koodin siirrettävyys Jos hieman karrikoidaan, niin pienten mikro-ohjainten ohjelmointi on pääosin rekistereiden bittien manipulointia ja huomattavasti vähemmän yleisluontoista, oikeaa, tietojenkäsittelyä. Suurien, 32/64-bittisten mikro-ohjaimien ja Linux-käyttöjärjestelmän yhteydessä voidaan hyödyntää valmiita kirjastoja, tehdä oikeaa ohjelmointia. Ainoastaan sellainen koodi, joka on kirjoitettu täysin ANSI C:n mukaisia kirjastoja käyttäen, on siirrettävissä sellaisenaan alustasta toiseen. Sulautetuissa järjestelmissä se ei aina ole mahdollista. Laiteläheisyys tuo niin paljon ohjelmakoodiin erikoisratkaisuja, että aina on suoritettava enemmän tai vähemmän tapauskohtaisia muutoksia. Sulautetut järjestelmät ja ANSI C C-kieli on hyvin standardisoitu. Standardointi mahdollistaa sen, että kieli on helposti siirrettävissä eri ympäristöihin (eri mikro-ohjaimille). Samalla se takaa, että käyttövarmuus, ylläpidettävyys ja suoritustehokkuus ovat hyvät. ANSI, American National Standards Institute, on vuodesta 1983 alkaen huolehtinut C-ohjelmien yhteensopivuudesta. Ennen sitä kaikki ohjelmoijat noudattivat normina Ritchie ja Kerninghan kirjaa "The C Programming Language". ANSI C standardi valmistui 1989 ja sitä on myöhemmin (1999, 2011) täydennetty. Kun ohjelmassa käytetään pelkästään ANSI-standardin mukaista koodia, se on käännettävissä eri ympäristöihin ja kääntämisen voi tehdä kaikilla normin mukaisilla C-työkaluilla. ANSI C määrittää C-kielen lisäksi myös standardikirjaston (Standard Library), jossa määritetään ne perusfunktiot, jotka ovat käyttävissä eri ympäristöissä ja josta voi poimia useaan eri tilanteeseen ja ongelmaan sopivan ohjelmamoduulin. Valmiita funktioita löytyy mm. käyttöjärjestelmän käsittelyyn, muotoiltuun syötteeseen ja tulostukseen, muistin varaamiseen, merkkijonojen käsittelyyn jne. Normi esittää yksityiskohtaisesti kunkin valmiin funktion toiminnan. Koska ANSI-C ei suoraan tue rekisterien käyttöä esim. symbolisen konekielen tavoin (LDI r16,8), siksi laiteläheisessä ohjelmoinnissa tarvitaan erityisen paljon rekistereiden manipulointia makrojen tai erikoiskirjastofunktioiden avulla. Mikä on C99? Mikä on C11? Vuonna 2007 aloitettiin uuden standardi-version kehittely, se valmistui Siinä laajennettiin C- kielen ominaisuuksia ja kirjastoja. GCC, GNU C Compiler GCC tarkoittaa nykyään GNU Compiler Collection, koska sillä voi kääntää C:n lisäksi myös C++, Objective C, Objective-C++, Java, Fortran, Ada, kieliä ja se tukee mm. Alpha, Intel i386, x86_64, Motorola 68k, MIPS, PowerPC, ARM, AVR, Motorola HC11/12 ohjaimia. GCC on tärkeä osa GNU/Linux-projektia. Koska se on osoittautunut luotettavaksi työkaluksi, se on laajalti käytössä myös yritysmaailmassa ja sitä kehitetään aktiivisesti myös huomenna. 3
4 Miksi C eikä asm? Assembly eli lyhyesti asm, on matalan tason ohjelmointikieli ja se on aina mikro-ohjaimeen sidottu. Oikeasti assembly on konekoodia, jonka konekielen käskyt on muutettu apusanoiksi eli muistikkaiksi, mnemonics, jotta ne olisivat koodaajan helpommin hallittavissa. Koska asm on laiteläheinen, sen koodi on suoraan CPU:n komentamiseen tarkoitettuja yksinkertaisia käskyjä, ja niitä oltava paljon. Se vaatii ohjelmoijalta kohtuutonta ja turhaa muistamista. Ohjelman tekeminen asmilla on todella suuritöistä. Jotta työ olisi muutakin kuin puuhastelua, ammattimaisuus edellyttää koodausta korkeamman tason kielellä. Muistathan, että korkean tason kielenä yksi C-käsky käännettynä käsittää (joskus hyvinkin) monta asm-käskyä. Kun ohjelmoidaan C-kielellä, tai jollain muulla korkean tason kielellä, CPU:n sisäinen toiminta ja rekisterit voidaan ainakin osittain unohtaa. C-kääntäjä hoitakoon sen. Opiskeluvaiheessa MCU:n sisäisen rakenteen ja toiminnan haltuunotto on tärkeää, sillä sitä tietämystä tarvitaan jatkuvasti uusien asioiden omaksumiseen. Mutta kun ne hallitaan, ts. ammattisanasto ja työkalut hallitaan, voidaan keskittyä ongelman ratkaisuun eli sovellusohjelman koodaamiseen. Toinen tärkeä ominaisuus on siirrettävyys, portability, porttaaminen. Jos jostain syystä on vaihdettava mikro-ohjain toiseen, C-koodin siirtäminen siihen on huomattavasti kevyempi toimenpide kuin kaiken koodaaminen uudelleen asmilla. Porttaamisessa auttaa, jos on mahdollista toteuttaa koodia mahdollisimman paljon C-kielen standardikirjasto-funktioilla, sillä ne soveltuvat sellaisenaan käyttöön uudessakin ympäristössä. Ja mikä lienee tärkeintä; korkean tason kielessä voit keskittyä oikeaan ohjelmointiin eli algoritmien suunnitteluun. Vaikka toisaalta; rekisterien ja niiden bittien manipuloinnista ei laiteläheisessä sulautettujen systeemien ohjelmoinnissa koskaan päästä eroon. Onneksi. Molempi parempi Assemblyä käytetään C-kielen sisällä kun kyseessä on koodin aikakriittiset osiot (nopeus, synkronointi). Siksi koodaajan tulee osata ainakin käyttämänsä mikro-ohjaimen assembly-koodin perusteet. Ristikääntäjä Sulautettujen laitteiden ohjelmia (Internet of Things) kehitetään muussa kuin kohdeympäristössä (PC), jolloin tarvitaan ristikääntäjä. Ristikääntäjä toimii siis PC-koneessa (Pentium, AMD), mutta koodi käännetään kohdeprosessorin konekoodiksi (esim. ARM). Alla olevasta kuvasta käy ilmi C-kielen kehitys vuosien saatossa. C- ja C++ kielet ovat säilyttäneet asemansa laiteläheisen koodin kirjoittamisessa. Java yritti voittaa 4
5 niiden paikan, yliopistomaailma teki parhaansa, kuitenkaan siinä onnistumatta. Android-puhelimiin ohjelmia tekevät sitä käyttävät. Microsoft kehitti oman ceen, C sharpin, C#. GNU/Linuxilla ei perinteisesti ole käytetty juurikaan C++:aa, vaan nimenomaan C:tä, joka on osittain erilainen kieli. C:n kanssa käytetään POSIX-API:a, jolloin ohjelmat toimivat aikalailla suoraan myös muilla unixeilla. Työkaluketjusta, binutils ja kirjastoista, libraries, infoa omissa dokumenteissa. 5
3. C-kieli sulautetun järjestelmän ohjelmointikielenä 07.01.2008, pva
3. C-kieli sulautetun järjestelmän ohjelmointikielenä 07.01.2008, pva "Ohjelmointi ei ole mitään massojen huvia, vaikka sitä joskus helpoksi luullaankin. Joiltakin se sujuu luonnostaan, jotkut voivat jopa
LisätiedotÄlykännykät ovat pieneen tilaan paketoituja, mutta suuret ominaisuudet omaavia tietokoneita.
Mikä on tietokone PUNOMO NETWORKS OY 22.7.2016 pva, piirroskuvat J. Mansikkaviita Henkilökohtaisesti olen aina valmis oppimaan, vaikka en välitäkään tulla opetetuksi. - Winston Churchill Tietokone on elektroninen
LisätiedotTietokoneohjelman anatomia Mikä on tietokoneohjelma ja tietokonekieli
Tietokoneohjelman anatomia Mikä on tietokoneohjelma ja tietokonekieli PUNOMO NETWORKS OY 28.9.2017 pva https://punomo.fi/?p=52266&preview=true Nothing is particularly hard if you devide it into small jobs.
Lisätiedot4. Lausekielinen ohjelmointi 4.1
4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen ja tulkinta. - Kääntäminen,
LisätiedotLuento 1 Tietokonejärjestelmän rakenne
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
LisätiedotLuento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
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ätiedot4. Lausekielinen ohjelmointi 4.1
4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Hyvä ohjelmointitapa. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen
LisätiedotLuento 1 Tietokonejärjestelmän rakenne
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Luento
LisätiedotLuento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus
Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone
LisätiedotConcurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo
Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...
LisätiedotLaiteläheinen C-kieli, mitä C-käännösprosessissa tapahtuu
Laiteläheinen C-kieli, mitä C-käännösprosessissa tapahtuu PUNOMO NETWORKS OY 25.8.2016, pva Sisältö 1. Komentoriviltä kääntäminen - jotta selviää miten toimitaan ja mitä terminologiaa eli käsitteitä on
LisätiedotLaiteläheinen C-kieli osa 1 pva
Laiteläheinen C-kieli osa 1 pva 12.7.2016 Osion sisältö Ohjelmoimaan oppii vain itse tekemällä Ensimmäinen projekti ja ensimmäinen ohjelma hello.c Oletus Sinulla on käytössäsi 1. GNU/Linux (Mint) pöytäkone
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ätiedotBL40A1810 Mikroprosessorit, harjoitus 1
BL40A1810 Mikroprosessorit, harjoitus 1 Käytettävä laitteisto Kurssin opetuslaitteistona käytetään Legon MINDSTORMS laitteita, jonka pääosia ovat ohjelmoitava NXT-yksikkö (Atmel ARM7, 64k RAM, 256k Flash),
Lisätiedot2.2. Tietokoneohjelman tekeminen 7.1.2008. pva, kuvat jma
2.2. Tietokoneohjelman tekeminen 7.1.2008. pva, kuvat jma Nothing is particularly hard if you divide it into small jobs. - Henry Ford Yleistä Tietokone tekee kaiken sen - ja vain sen - mitä ohjelmoija
LisätiedotLuento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus
Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän e eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokone- järjestelmäj ä Käyttäjä Tietokonelaitteisto Oheislaitteet
LisätiedotLuento 1 (verkkoluento 1) Tietokonejärjestelmä
Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä This image cannot currently be displayed.
LisätiedotSoveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olioorientoituneeseen
Soveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olioorientoituneeseen ohjelmointiin Jukka Talvitie Valvoja: Professori Jorma Jormakka Paikka: TietoEnator oyj Ongelma Ideologia Lifebelt
LisätiedotKYMENLAAKSON AMMATTIKORKEAKOULU
1 KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Ole Halonen GNU-ohjelmointityökalut Linux-järjestelmät 206101310 Seminaarityö 22.11.2012 2 Sisällysluettelo 2 1 Johdanto
LisätiedotLaiteläheinen C-kieli, hello.c
Laiteläheinen C-kieli, hello.c PUNOMO NETWORKS OY 23.8.2016 pva Oletus Sinulla on GNU/Linux-Mint-koneessa (tai vastaava Windows) NetBeans-IDE konfiguroituna toimimaan SSH-etäkäytössä RaspberryPi:n kanssa.
LisätiedotC++ Kuva 1-1. C- ja C++ kielien perustana olevat kielet.
1. JOHDANTO C-kieli on perustana useille muille ohjelmointikielille. Esimerkiksi C++-kieli on kehitetty C- kielestä, Java- ja C#-kielen syntaksin perustana on toiminut C-kieli ja useat muutkin ohjelmointikielet
LisätiedotAS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin
AS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin Raimo Nikkilä Aalto-yliopiston sähkötekniikan korkeakoulu - Automaation tietotekniikan tutkimusryhmä 17. tammikuuta 2013
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
LisätiedotITKA203 Käyttöjärjestelmät, kesä Kesäkurssi Opettaja: Paavo Nieminen
Kesäkurssi 22.5.-27.7.2007 Opettaja: Paavo Nieminen Luento 3 24.5.2007 Ohjelmointi ja ohjelmointikieli suoritus ja konekieli Aiheet: Pääteyhteys ja interaktiivisen shellin käytön idea;
LisätiedotMikro-ohjain µc harjoitukset - yleisohje
Mikro-ohjain µc harjoitukset - yleisohje Keijo Salonen 20. marraskuuta 2016 Sisältö 1 Esittely 2 2 Arduino UNO R3 mikro-ohjain kortti 2 3 Koekytkentälevy 5 4 Elektroniikan komponentit 7 5 Työkalut ja muut
LisätiedotKoodaamme uutta todellisuutta FM Maarit Savolainen https://blog.edu.turku.fi/matikkaajakoodausta/
Koodaamme uutta todellisuutta FM Maarit Savolainen 19.1.2017 https://blog.edu.turku.fi/matikkaajakoodausta/ Mitä on koodaaminen? Koodaus on puhetta tietokoneille. Koodaus on käskyjen antamista tietokoneelle.
LisätiedotNetBeans asennus ja etäkäyttö C-kielen opiskeluun, Windows
NetBeans asennus ja etäkäyttö C-kielen opiskeluun, Windows PUNOMO NETWORKS OY 24.7.2016 & 27.8.2016 pva NetBeans on ohjelmointiympäristö, IDE (Integrated Development Environment) jonka avulla opiskelemme
LisätiedotOngelma(t): Miten jollakin korkeamman tason ohjelmointikielellä esitetty algoritmi saadaan suoritettua mikro-ohjelmoitavalla tietokoneella ja siinä
Ongelma(t): Miten jollakin korkeamman tason ohjelmointikielellä esitetty algoritmi saadaan suoritettua mikro-ohjelmoitavalla tietokoneella ja siinä olevilla komponenteilla? Voisiko jollakin ohjelmointikielellä
LisätiedotJohdanto laiteläheiseen C-ohjelmointiin
Johdanto laiteläheiseen C-ohjelmointiin PUNOMO NETWORKS OY 26.7.2016 pva Opiskelemalla ohjelmoimaan teollista internettiä, sen sulautettuja järjestelmiä, Open Source-työkaluilla GNU/Linux-ympäristössä,
LisätiedotNetBeans asennus ja etäkäyttö C-kielen opiskeluun, Linux
NetBeans asennus ja etäkäyttö C-kielen opiskeluun, Linux PUNOMO NETWORKS OY 24.7.2016 pva NetBeans on ohjelmointiympäristö, IDE (Integrated Development Environment) jonka avulla opiskelemme laiteläheistä
LisätiedotOhjelmointi 1. Kumppanit
Ohjelmointi 1 Kumppanit November 20, 2012 2 Contents 1 Mitä ohjelmointi on 7 2 Ensimmäinen C#-ohjelma 9 2.1 Ohjelman kirjoittaminen......................... 9 A Liite 11 3 4 CONTENTS Esipuhe Esipuhe 5
LisätiedotELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
LisätiedotTähtitieteen käytännön menetelmiä Kevät 2009
Tähtitieteen käytännön menetelmiä Kevät 2009 2009-01-12 Yleistä Luennot Luennoija hannu.p.parviainen@helsinki.fi Aikataulu Observatoriolla Maanantaisin 10.00-12.00 Ohjattua harjoittelua maanantaisin 9.00-10.00
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ätiedot1. NetBeans-ohjelman asennus ja käyttöönotto pva
1. NetBeans-ohjelman asennus ja käyttöönotto 11.7.2016 pva NetBeans on ohjelmointiympäristö, IDE (Integrated Development Environment) jonka avulla opiskelemme laiteläheistä C-ohjelmointia. Oletus Sinulla
Lisätiedot2. Sulautettu järjestelmä ja mikro-ohjain 11.12.2007, pva
2. Sulautettu järjestelmä ja mikro-ohjain 11.12.2007, pva Henkilökohtaisesti olen aina valmis oppimaan, vaikka en välitäkään tulla opetetuksi. - Winston Churchill Yleistä Sulautettu järjestelmä, Embedded
Lisätiedot.NET ajoympäristö. Juha Järvensivu 2007
.NET ajoympäristö Juha Järvensivu juha.jarvensivu@tut.fi 2007 Käännösprosessi C# lähdekoodi C# kääntäjä CILtavukoodi JITkäännös Ajettava natiivikoodi Kehitysympäristössä ohjelmoijan toimesta Ajonaikana.NET
LisätiedotOngelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?
Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön? 2013-2014 Lasse Lensu 2 Systeemiohjelmat ovat tietokoneen laitteistoa lähellä olevia ohjelmia,
LisätiedotOhjelmointi Linuxissa. Sisällysluettelo. 1. Mitä tarvitaan sovellusten tuottamiseen? Tehnyt: Antti Martikainen (1300698)
Ohjelmointi Linuxissa Tehnyt: Antti Martikainen (1300698) Sisällysluettelo 1. Mitä tarvitaan sovellusten tuottamiseen?...1 2. GNU Toolchain...2 3. Tekstieditorit...2 4. Hello world-sovelluksen luominen
LisätiedotChapel. TIE Ryhmä 91. Joonas Eloranta Lari Valtonen
Chapel TIE-20306 Ryhmä 91 Joonas Eloranta Lari Valtonen Johdanto Chapel on Amerikkalaisen Cray Inc. yrityksen kehittämä avoimen lähdekoodin ohjelmointikieli. Chapel on rinnakkainen ohjelmointikieli, joka
LisätiedotKäyttöjärjestelmien historia. Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen
Käyttöjärjestelmien historia Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen Käyttöjärjestelmien jaottelu Voidaan jaotella erilaisin menetelmin Aikajana (määrä,
LisätiedotIDE asennus, Integrated Development Environment Atmelin AVR-mikro-ohjaimille. 15.8.2008 pva
IDE asennus, Integrated Development Environment Atmelin AVR-mikro-ohjaimille. 15.8.2008 pva Pienen maan armeija on samaa tarkoitusta varten kuin päivystävän upseerin pistooli. Omia varten. - Arvo Salo
Lisätiedot16. Ohjelmoinnin tekniikkaa 16.1
16. Ohjelmoinnin tekniikkaa 16.1 Sisällys Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. For-lause lyhemmin. If-else-lause vaihtoehtoisesti
Lisätiedot16. Ohjelmoinnin tekniikkaa 16.1
16. Ohjelmoinnin tekniikkaa 16.1 Sisällys For-lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. If-else-lause vaihtoehtoisesti
LisätiedotOHJELMISTOKEHITYS -suuntautumisvaihtoehto
OHJELMISTOKEHITYS -suuntautumisvaihtoehto Suuntautumisvaihtoehdon esittely 1. vuoden opiskelijoille Kari Laitinen www.oamk.fi/~karil/opetus.html Ohjelmistokehitys -opintosuunnan valitsevista henkilöistä
LisätiedotLinux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä
Linux 00 Keskeiset piirteet Tux-pingviinin kuva: Larry Ewing, Simon Budig ja Anja Gerwinski Kysymyksiä 1. Mikä Linux on? 2. Kuinka Linux syntyi ja kehittyy? 3. Mitkä ovat Linuxin vahvuudet? 2 1 Linux on
Lisätiedot1. Olio-ohjelmointi 1.1
1. Olio-ohjelmointi 1.1 Sisällys Olio-ohjelmointi on eräs ohjelmointiparadigma. Olio-ohjelmoinnin muotoja. Ohjelmiston analyysi ja suunnittelu. Olioparadigman etuja ja kritiikkiä. 1.2 Ohjelmointiparadigmoja
LisätiedotOhjelmoinnin perusteet, syksy 2006
Ohjelmoinnin perusteet, syksy 2006 Esimerkkivastaukset 1. harjoituksiin. Alkuperäiset esimerkkivastaukset laati Jari Suominen. Vastauksia muokkasi Jukka Stenlund. 1. Esitä seuraavan algoritmin tila jokaisen
LisätiedotTIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?
Miksi moniprosessorijärjestelmä? Laskentaa voidaan hajauttaa useammille prosessoreille nopeuden, modulaarisuuden ja luotettavuuden vaatimuksesta tai hajauttaminen voi helpottaa ohjelmointia. Voi olla järkevää
LisätiedotC-ohjelmoinnin peruskurssi. Pasi Sarolahti
C! C-ohjelmoinnin peruskurssi Pasi Sarolahti Mitä haluan oppia C-kurssilla? ja miksi? Tutustu lähimpään naapuriin Keskustelkaa miksi halusitte / jouduitte tulemaan kurssille 3 minuuttia è kootaan vastauksia
LisätiedotGIS-automatisointi ja ohjelmointi/skriptaus. Harri Antikainen
GIS-automatisointi ja ohjelmointi/skriptaus Harri Antikainen Mistä nyt puhutaan? Automatisointi: Mikä tahansa tapa teettää tietokoneella asioita ilman että käyttäjän tarvitsee tehdä muuta kuin laittaa
Lisätiedot1. Ohjelmoinnin peruskäsitteet ja -elementit
1. Ohjelmoinnin peruskäsitteet ja -elementit 1. ohjelmoinnin periaatteet 2. ohjelmointikielet 3. algoritmien suunnittelu 1 1.1 Ohjelmoinnin periaatteet Vaatimukset Määrittely Suunnittelu Toteutus Integrointi
LisätiedotJohdatus ohjelmointiin
Johdatus ohjelmointiin Ohjelmistot tietokonejärjestelmissä Jaana Holvikivi Ohjelmistojen tehtävät Sovellusohjelmat tekstinkäsittely ja muut toimistosovellukset kirjanpito, tuotannonohjaus selaimet, mediaohjelmat
LisätiedotPythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python
Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010 Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat
LisätiedotOpastusta ohjelmointiin, C-kieleen ja mikro-ohjaimiin. Se kaikki se tulee tässä kirjassa.
1 Esipuhe Tiedon voi hankkia kolmella tavalla: ajattelemalla - se on jalo tapa yrityksen ja erehdyksen kautta - se on kova tie matkimalla - se on helppo tapa - Konfutse Sulautettujen järjestelmien merkitys
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 28.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 28.2.2011 1 / 46 Ohjelmointiprojektin vaiheet 1. Määrittely 2. Ohjelman suunnittelu (ohjelman rakenne ja ohjelman
LisätiedotSisällys. 16. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. Aritmetiikkaa toisin merkiten
Sisällys 16. Ohjelmoinnin tekniikkaa Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. For-lause lyhemmin. If-else-lause vaihtoehtoisesti
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ätiedotTest-Driven Development
Test-Driven Development Syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole keksiä kaikkia mahdollisia
LisätiedotTest-Driven Development
Test-Driven Development Ohjelmistotuotanto syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole
LisätiedotAlgoritmit. Ohjelman tekemisen hahmottamisessa käytetään
Ohjelmointi Ohjelmoinnissa koneelle annetaan tarkkoja käskyjä siitä, mitä koneen tulisi tehdä. Ohjelmointikieliä on olemassa useita satoja. Ohjelmoinnissa on oleellista asioiden hyvä suunnittelu etukäteen.
LisätiedotImperatiivisten ohjelmien organisointiparadigmojen. historia
Imperatiivisten ohjelmien organisointiparadigmojen historia Timo Tapanainen Helsingin yliopisto, tietojenkäsittelytieteen laitos Tietojenkäsittelytieteen historia -seminaari, kevät 2007 Sisältö Paradigma,
LisätiedotImperatiivisten ohjelmien organisointiparadigmojen historia
Imperatiivisten ohjelmien organisointiparadigmojen historia Timo Tapanainen Helsingin yliopisto, tietojenkäsittelytieteen laitos Tietojenkäsittelytieteen historia -seminaari, kevät 2007 Sisältö Paradigma,
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ätiedotOhjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia.
Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen raine.kauppinen@haaga-helia.fi 1. Java-ohjelmoinnin alkeita Tietokoneohjelma Java-kieli ja Eclipse-ympäristö Java-ohjelma ja ohjelmaluokka
LisätiedotCUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen
CUDA Moniydinohjelmointi 17.4.2012 Mikko Honkonen Yleisesti Compute Unified Device Architecture Ideana GPGPU eli grafiikkaprosessorin käyttö yleiseen laskentaan. Nvidian täysin suljetusti kehittämä. Vuoden
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ätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 19.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 19.1.2009 1 / 25 Mihin teekkari / diplomi-insinööri tarvitsee ohjelmointia? Pienten laskentasovellusten kirjoittaminen.
LisätiedotHarjoitus 2 (viikko 45)
Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista lisätä static-määre operaatioidesi otsikoihin, jotta ohjelmasi kääntyvät. Muista noudattaa hyvän
LisätiedotTIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit
TIE-20100 Tietorakenteet ja algoritmit 1 TIE-20100 Tietorakenteet ja algoritmit TIE-20100 Tietorakenteet ja algoritmit 2 Lähteet Luentomoniste pohjautuu vahvasti prof. Antti Valmarin vanhaan luentomonisteeseen
LisätiedotKemian tekniikan kandidaattiohjelman ohjelmointikurssi (5 op)
Kemian tekniikan kandidaattiohjelman ohjelmointikurssi (5 op) Antti Karttunen ja Juhani Teeriniemi Osa 1 Ohjelmoinnin peruskäsitteitä, Python, Spyder-kehitysympäristö, tulostaminen, syötteen lukeminen,
LisätiedotOHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012
OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012 Luento 6: Tiedon esittäminen tietokoneessa, osa 1 Tekijät: Antti Virtanen, Timo Lehtonen, Matti Kujala, Kirsti Ala-Mutka, Petri M. Gerdt et al. Luennon
LisätiedotKontrollerin sisäisten komponenttien käytöstä. Vielä vähän asiaa sisäisten lohkojen käytöstä
Mikrokontrollerit Kontrollerin sisäisten komponenttien käytöstä Mikrokontrollerit Vielä vähän asiaa sisäisten lohkojen käytöstä Sulautetussa järjestelmässä laitteiston ominaisuudet hallitaan ohjelmistolla.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 21.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 21.1.2009 1 / 32 Tyypeistä Monissa muissa ohjelmointikielissä (esim. Java ja C) muuttujat on määriteltävä ennen
LisätiedotSisällys. 17. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. for-lause lyhemmin
Sisällys 17. Ohjelmoinnin tekniikkaa for-lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. if-else-lause vaihtoehtoisesti
Lisätiedot.NET ja C# Virtuaalikone. Common Language Infrastructure (CLI) Periaate. Etuja. Haittoja. Mikä on CLI. CLI standardin merkitys (CLS, Ecma)
.NET ja C# Virtuaalikone Periaate Virtuaalikone on tapa abstrahoida allaoleva toteutus yhteisen rajapinnan taakse. Virtuaalikoneet muodostavat hierarkian. Hierarkiassa ylempänä oleva käyttää alemman tarjoamaa
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 1.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 1.3.2010 1 / 36 Monikko Monikko (engl. tuple) muistuttaa listaa, mutta monikon sisältöä ei voi muuttaa sen jälkeen,
Lisätiedot13/20: Kierrätys kannattaa koodaamisessakin
Ohjelmointi 1 / syksy 2007 13/20: Kierrätys kannattaa koodaamisessakin Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy
LisätiedotTIE PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli
TIE-20306 PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli Seminaariesitelmä ryhmä 24 Markku Ahokas Jani Kuitti i SISÄLLYSLUETTELO 1. YLEISTÄ EIFFELISTÄ... 1 1.1 Historia ja tausta... 1 1.2
LisätiedotC++ Ohjelmoijan käsikirja. Johdanto
Johdanto C++ Ohjelmoijan käsikirja Johdanto Tervetuloa Inside C++-kirjan pariin. Tämä on opaskirja standardi C++:n käyttöön. Käsittelemme kirjassa kaikki syntaksin, kieliopin, olio-ohjelmoinnin ja standardikirjastojen
LisätiedotRyhmäharjoitus III: Mitä on koodaaminen? A. TIEY4 Tietotekniikkataidot, kevät 2017 Tehdään ryhmäharjoitustunnilla 20.3.
Ryhmäharjoitus III: Mitä on koodaaminen? A TIEY4 Tietotekniikkataidot, kevät 2017 Tehdään ryhmäharjoitustunnilla 20.3. Ryhmäharjoitus Johdanto (10 min) Tehtävä (60 min) Palaute (10 min) Koodaaminen - Miksi
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 20.1.2010 T-106.1208 Ohjelmoinnin perusteet Y 20.1.2010 1 / 40 Arvon pyytäminen käyttäjältä Käyttäjän antaman arvon voi lukea raw_input-käskyllä. Käskyn sulkujen
LisätiedotCommon Language Runtime
hyväksymispäivä arvosana arvostelija Common Language Runtime Jukka Katajisto Helsinki 16.4.2005 Ohjelmointikielten kääntäjät -kurssin seminaarityö HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö
LisätiedotKerta 2. Kerta 2 Kerta 3 Kerta 4 Kerta 5. 1. Toteuta Pythonilla seuraava ohjelma:
Kerta 2 Kerta 3 Kerta 4 Kerta 5 Kerta 2 1. Toteuta Pythonilla seuraava ohjelma: 2. Tulosta Pythonilla seuraavat luvut allekkain a. 0 10 (eli, näyttää tältä: 0 1 2 3 4 5 6 7 8 9 10 b. 0 100 c. 50 100 3.
LisätiedotTAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 11.08.2010 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
LisätiedotTutoriaaliläsnäoloista
Tutoriaaliläsnäoloista Tutoriaaliläsnäolokierroksella voi nyt täyttää anomuksen läsnäolon merkitsemisestä Esim. tagi ei toiminut, korvavaltimon leikkaus, yms. Hyväksyn näitä omaa harkintaa käyttäen Tarkoitus
LisätiedotDart. Ryhmä 38. Ville Tahvanainen. Juha Häkli
Dart Ryhmä 38 Ville Tahvanainen Juha Häkli 1.LYHYESTI Dart on luokkapohjainen, yksiperintäinen, puhdas olio-ohjelmointikieli. Dart on dynaamisesti tyypitetty. Sovellukset on organisoitu modulaarisiksi
LisätiedotC-ohjelmoinnin peruskurssi. Pasi Sarolahti
C! C-ohjelmoinnin peruskurssi Pasi Sarolahti 12.1.2017 presemo.aalto.fi/c17 1/12/17 Mikä C? 3 Ken Thompson & Dennis Ritchie http://www.computerhistory.org/fellowawards/hall/bios/ken,thompson/ 4 Mikä C?
LisätiedotTietokanta (database)
Tietokanta Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja 1 Tiedosto Ohjelmointikielissä apumuistiin tallennettuja tietoja käsitellään
LisätiedotPython-ohjelmointi Harjoitus 2
Python-ohjelmointi Harjoitus 2 TAVOITTEET Kerrataan tulostuskomento ja lukumuotoisen muuttujan muuttaminen merkkijonoksi. Opitaan jakojäännös eli modulus, vertailuoperaattorit, ehtorakenne jos, input-komento
LisätiedotKieliversiointityökalu Java-ohjelmistoon. Ohje
Kieliversiointityökalu Java-ohjelmistoon Ohje 2/6 SISÄLLYSLUETTELO 1 YLEISTÄ OHJELMASTA... 3 2 PÄÄ-IKKUNA...4 3 YLÄVALIKKO... 4 3.1 TIEDOSTO... 4 3.2 TOIMINTO... 4 3.3 ASETUKSET... 5 3.4 OHJE... 5 4 VÄLILEHDET...5
LisätiedotTähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python
Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python 31. tammikuuta 2009 Ohjelmointi Perusteet Pythonin alkeet Esittely Esimerkkejä Muuttujat Peruskäsitteitä Käsittely
Lisätiedot1. Algoritmi 1.1 Sisällys Algoritmin määritelmä. Aiheen pariin johdatteleva esimerkki. Muuttujat ja operaatiot (sijoitus, aritmetiikka ja vertailu). Algoritmista ohjelmaksi. 1.2 Algoritmin määritelmä Ohjelmointi
LisätiedotSISÄLLYS sisällys 1 Tietokoneen toimintaperiaate ja käyttö 2 Tietokoneen historia 3 Tietokoneen rakenteen ja toiminnan perusteet
SISÄLLYS 1 2 3 4 Tietokoneen toimintaperiaate ja käyttö 14 1.1 Mikä tietokone on? 14 1.2 Tieteen ja toimiston koneista yleistietokoneeseen 15 1.3 Mekaanisista ja sähköisistä laitteista sulautettuihin tietokoneisiin
LisätiedotSolidity älysopimus ohjelmointi. Sopimus suuntautunut ohjelmointi
Solidity älysopimus ohjelmointi Sopimus suuntautunut ohjelmointi Merkle puu Kertausta eiliseltä Solidity on korkean tason älysopimus ohjelmointikieli Muistuttaa olio-ohjelmointia Javalla Sopimuskoodi on
LisätiedotProlog kielenä Periaatteet Yhteenveto. Prolog. Toni ja Laura Fadjukoff. 9. joulukuuta 2010
kielenä 9. joulukuuta 2010 Historia kielenä Historia Sovelluksia kehitettiin vuonna 1972 Kehittäjinä ranskalaiset Pääkehittäjä Alain Colmerauer Philippe Roussel programmation en logique Robert Kowalski
LisätiedotC-ohjelmointikielen perusteet, osa 1
C-ohjelmointikielen perusteet, osa 1 Kurssi johdattaa sinut askel askeleelta C-ohjelmoinnin perusteisiin. Kurssi suoritetaan kokonaan netissä vuorovaikutteisella alustalla itseopiskeluna tutorin avustuksella.
Lisätiedot2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)
2. Lisää Java-ohjelmoinnin alkeita Muuttuja ja viittausmuuttuja Vakio ja literaalivakio Sijoituslause Syötteen lukeminen ja Scanner-luokka 1 Muuttuja ja viittausmuuttuja (1/4) Edellä mainittiin, että String-tietotyyppi
LisätiedotHarjoitus 5 (viikko 48)
Moni tämän harjoituksen tehtävistä liittyy joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Harjoitustyö edistyy sitä paremmin, mitä enemmän tehtäviä ratkaiset. Mikäli tehtävissä on jotain
Lisätiedot