Ohjelmoitava laskin on laskin, jolla on ohjelmien syöttäminen ja suorittaminen .
Kaikentyyppisille laskimeille yhteisten parametrien joukossa, kuten laskentalogiikka, muistirekisterien määrä , joukko tuettuja toimintoja ja näyttöominaisuuksia, on lisätty ohjelmoitavat laskimet:
Yksinkertaisten ohjelmoitavien laskimien avulla voit tallentaa ja käyttää uudelleen vain lineaarisia operaatiosarjoja, eli voit yksinkertaisesti suorittaa laskutoimituksia toistuvasti samoilla kaavoilla syöttämättä näitä kaavoja uudelleen. Monimutkaisempien avulla voit kirjoittaa täysimittaisia ohjelmia merkkikoodikielellä, mukautetulla BASIC -versiolla tai muilla ohjelmointikielillä.
Tehokkaimmissa ohjelmoitavissa laskimissa on graafinen näyttö , sisäänrakennettu korkean tason ohjelmointikieli, kyky kommunikoida tietokoneen kanssa ohjelmien tai tietojen lataamiseksi, liitäntä ulkoisiin laitteisiin; käytetään prosessoreita , joiden kellonopeus on kymmeniä megahertsejä, muisti voi sisältää satoja kilotavuja RAM -muistia ja megatavua flash-muistia . Tällaiset laskimet on myös usein varustettu symbolisten laskutoimitusten järjestelmällä, joka sisältää erilaisia manipulaatioita lausekkeiden kanssa, yhtälöiden ja niiden järjestelmien ratkaisemista, symbolista eriyttämistä ja integrointia sekä usein differentiaaliyhtälöiden ratkaisemista symbolisessa muodossa. Voidaan tukea kaksi- ja kolmiulotteisten kaavioiden ja kaavioiden piirtämistä, lineaarisia algebran operaatioita, edistyneitä työkaluja tilastolliseen data-analyysiin, talouslaskelmia, laskelmia kompleksiluvuilla. Joillekin on mahdollista ohjelmoida C-kielellä tietokoneella, jota seuraa ristiin kääntäminen ja koodin lataaminen.
Ohjelmien kanssa työskentelyn varmistamiseksi ohjelmoitavan laskimen on tavanomaisen manuaalisen laskutoimituksen (tila, jossa perinteiset laskimet toimivat jatkuvasti) lisäksi tuettava vähintään kahta muuta toimintatilaa: ohjelmointitila ja ohjelman suoritustila.
Lisäksi ohjelmoitava laskin voi tukea tavalla tai toisella organisoitua vaiheittaista ohjelman suorittamista (se voidaan yhdistää tavanomaiseen manuaaliseen laskutoimitukseen). Tässä tilassa laskin, painamalla tiettyä näppäimistön näppäintä, suorittaa täsmälleen yhden nykyisen ohjelman komennon ja siirtyy manuaaliseen tilaan. Vaiheittainen suoritus on tarkoitettu ohjelmien virheenkorjaukseen : seuraavan toiminnon tai useiden toimintojen suorittamisen jälkeen käyttäjällä on mahdollisuus analysoida laskimen tilaa ja varmistaa, että ohjelma suoritetaan täsmälleen suunnitellusti ja mahdollisissa virheet, hän voi poistaa ne syöttämällä oikeat tiedot manuaalisesti ja jatkaa tarkistamista mahdollisten vikojen tunnistamiseksi ja myöhemmin korjaamiseksi.
On olemassa kolme pohjimmiltaan erilaista tapaa ohjelmoida laskimia: symbolisen koodin konekieli, AER (Algebraic Expression Reserve) ja korkean tason kieli.
Ohjelma on erittäin karkea, yksinkertaisesti tallennettu koodien avulla laskimen näppäinpainallusten sarja (analogisesti tietokonemakrolle ) . Jokaisella avaimella tai kelvollisella näppäinyhdistelmällä on oma koodinsa. Ohjelma kirjoitetaan ohjelmointitilassa laskimen ohjelmamuistiin. Käyttäjä syöttää sen painamalla näppäimiä, kun vastaavat koodit tallennetaan muistiin.
Yksinkertaisimmissa ohjelmoitavissa laskimissa ohjelma voi olla vain lineaarinen. Niissä paikoissa, joissa kaavan logiikan mukaan vaaditaan manuaalinen tietojen syöttö, syötetään erityinen komento; ohjelman suorituksen aikana laskin keskeyttää laskennan tällä komennolla, antaa kutsun tietojen syöttämiseen ja odottaa, että käyttäjä syöttää vaaditun arvon ja painaa painiketta jatkaaksesi laskelmia. Tehokkaammissa laskimissa tavanomaisten laskentatoimintojen ja muistikomentojen lisäksi komentokieli sisältää erityisiä ohjauskäskyjä, eli ehtojen tarkistusta, haaroitusta, silmukkaa, ehdottomia hyppyjä osoitteeseen tai etikettiin, komentoja symbolisten otsikoiden asettamiseen, aliohjelmiin pääsyä. ja paluu alirutiineista. Kehitetyt merkkikoodikielet erottuvat komentojen läsnäolosta siirtymiä ja muistiin pääsyä varten epäsuoralla osoitteella (pääsy muistirekisteriin kirjoitettuun osoitteeseen tai rekisteriin, jonka koodi on kirjoitettu toiseen rekisteriin) - tällaisten komennon avulla voit järjestää monimutkaista suorituslogiikkaa ja käyttää mekanismeja, jotka ovat samanlaisia kuin korkean tason kielten taulukoita .
Komentokielessä on välttämättä komento ohjelman pysäyttämiseksi (suoritustilasta poistumiseksi), jolla laskin lopettaa ohjelman suorituksen ja pysähtyy näyttämään tuloksia.
Alkuperäinen AER-ohjelmointimenetelmä toteutettiin japanilaisessa Sharp EL-5100 ohjelmoitavassa laskimessa ja seuraavissa tämän sarjan laskimissa: EL-5100S, EL-5101, EL-5103, EL-5150, EL-5050, valmistettu 1970-luvun lopulla - 1980-luvun ensimmäisellä puoliskolla. Se koostuu ohjelman esittämisestä kaavojen joukkona. Jokaiselle vaadittavalle laskentatulokselle luodaan kaava. Kullekin kaavalle operaattori määrittelee argumentit (merkitty symboleilla) ja kirjoittaa itse kaavan tavalliseen, algebralliseen muotoon (esimerkiksi kaavalle “f(A,B,C)=0,5 A B sin(C)”, muuttujat A , B, C ja itse kaava esitetään muodossa "f() = .5 AB sin C"). Kun käyttäjä painaa kaavan laskentanäppäintä, laskin kysyy ensin käyttäjältä argumenttien A, B ja C arvot ja laskee sitten syötetyn kaavan. On helppo nähdä, että varsinaisen ohjelmoinnin (eli monimutkaisen logiikan ohjelmien luomisen) mahdollisuudet tällä menetelmällä ovat rajalliset, mutta se on hyvin selkeä, vaatii vähän aikaa opiskeluun ja on aivan riittävä, jos joudut laskemaan toistuvasti arvot käyttämällä samoja monimutkaisia kaavoja. Vähemmän ilmeinen, mutta myös merkittävä AER-logiikan positiivinen laatu on myös pienempi määrä näppäinpainalluksia samojen kaavojen syöttämiseen verrattuna perinteiseen algebralliseen logiikkaan. AER-logiikalla varustetun laskimen ominaisuuksia rajoittaa kaavojen enimmäismäärä ja koko sekä samanaikaisesti käytettävien muuttujien enimmäismäärä. Sarjan tehokkaimmassa edustajassa EL-5150:ssä ohjelmoitavien kaavojen maksimimäärä oli 99 ja maksimipituus 1400 merkkiä, käytettyjen muuttujien enimmäismäärä oli 26.
AER-logiikkaa ei käytetty laajalti, koska ominaisuudet olivat rajalliset. se vaati monimutkaisen näppäimistön, jossa oli suuri määrä merkkejä ja monimutkaisen aakkosnumeerisen näytön, jotka olivat sen ilmestymishetkellä vielä eksoottisia. Jotkut nykyaikaiset ohjelmoitavat laskimet tukevat kuitenkin AER:ää lähellä olevia ohjelmointimenetelmiä. Joten esimerkiksi Citizen SRP-325G -laskin yksinkertaistetulla Basic-versiolla ohjelmoinnin lisäksi tukee käyttäjän ohjelmina syöttämien kaavojen tallentamista ja suorittamista. Tämä tila on hyvin lähellä AER:ää: operaattori kirjoittaa laskentakaavan käyttämällä symbolisia muuttujia ja komennon tallentaa tämä kaava ohjelmamuistiin johonkin 10 käytettävissä olevasta numerosta; Tämän jälkeen ohjelman suorituskomennossa, jossa on annettu numero, laskin kysyy automaattisesti käyttäjältä kaavassa käytettyjen muuttujien arvot ja laskee tuloksen. Kaavoissa on jopa sallittua ohittaa kertolasku, mikä on tyypillistä AER:lle.
Ensimmäiset korkean tason kielellä ohjelmoidut laskimet toteuttivat rajoitetun BASIC-kielen osajoukon , joka on erityisesti sovitettu käytettäväksi laskimessa. Toistaiseksi Java-kielellä ohjelmoidut laskimet ovat käyttäneet joko Basicia tai omaa sen mukaan mallinnettua kieltä. Harvoja poikkeuksia tähän sääntöön ovat Reverse Polish Lisp (RPL), jota käytetään Hewlett-Packardin laskimissa , ja Lua , jota käytetään uusimmissa Texas Instrumentsin laskimissa . Tehokkaimmissa ja kehittyneimmissä tällä hetkellä valmistetuissa laskimissa on järjestelmät ristiinkääntämiseen C :stä ja suoritettavan koodin lataamiseen.
Tunnetuimpia ohjelmoitavien laskimien valmistajia ovat amerikkalaiset yhtiöt Texas Instruments ja Hewlett Packard sekä japanilainen CASIO. Näiden yritysten mallistossa on kaikenlaisia ohjelmoitavia laskimia. Huippumalleissa on suuret graafiset näytöt (2000-luvun toisen vuosikymmenen mallien joukossa - väri ja kosketus), ne on varustettu sisäänrakennetuilla symbolisilla laskentajärjestelmillä (CAS) ja tukevat tehokkaita ohjelmointikieliä.
Texas Instrumentsin TI-89- ja TI-92- sarjat käyttävät algebrallista merkintää ja BASIC - versiota nimeltä TI-BASIC. Kääntäjä C:llä PC:lle sekä ohjelmointityökalut Assemblerissa, jonka ovat luoneet tämän laskimen ystävät. Suuri määrä ohjelmia, erityisesti pelejä, on eri kirjoittajien kirjoittamia. Ero näiden kahden sarjan välillä on suunnittelussa: TI-92-sarjan laskimissa on QWERTY-näppäimistö ja iso näyttö, joten niitä ei voi laittaa taskuihin. Haittapuolena on painetun käyttöoppaan puute (Yhdysvalloissa niitä myydään sellaisen ohjekirjan kanssa). Useimmille opas on saatavilla vain CD-ROM-levyllä ja verkossa. Lisäksi PC:n kanssa kommunikointikaapeli on ostettava erikseen. Laskimet käyttävät 68 000 prosessoria, jonka kellotaajuus on 12 MHz (joissakin vanhemmissa malleissa 10 MHz). Näiden laskimien muut parametrit on esitetty taulukossa.
käyttäjän käytettävissä olevan RAM-muistin määrä |
käyttäjän käytettävissä olevan flash-muistin määrä |
näyttö | liikkeeseenlaskuvuosi | |
---|---|---|---|---|
TI-89 | 188K | 384 000 | 160×100 | 1998 |
TI-89 titaani | 188K | 2,7 milj | 160×100 | 2004 |
TI-92 | 68K | Ei | 240×128 | 1995 |
TI-92 Plus | 188K | 384 000 | 240×128 | 1998 |
Matka 200 | 188K | 2,7 milj | 240×128 | 2000 |
Tällä hetkellä valmistetaan vain TI-89 Titanium ja Voyage 200. Nuoremmista malleista TI-83 Plus on erityisen suosittu.
Hewlett - Packardin HP-49G-sarja (johon kuuluvat HP-49G, HP-49G+ sekä HP-48GII ja HP 50g laskimet ) käyttää nopeita ARM9-prosessoreita , ja siinä on kehitetty algebrallisen (symbolisen) matematiikan järjestelmä, käänteinen Puolan merkintä ja RPL-kieli (Reverse Polish Lisp ). Nämä laskimet ovat ominaisuuksiltaan jopa edistyneempiä kuin TI-89/92. Käyttäjien arvioiden mukaan nämä kiinalaisvalmisteiset laskimet kärsivät kuitenkin puhtaasti mekaanisista ongelmista: runko on muovia, näppäimet ovat kumia ja mikä tärkeintä, ne epäonnistuvat nopeasti (usein useissa kuukausissa). Yritys lähettää uuden laskimen, mutta sielläkin avaimet rikkoutuvat yhtä nopeasti. Mitä tulee käsikirjaan, se on hajanainen: siellä ei yksinkertaisesti ole tietoa. 800-sivuinen käsikirja on julkaistu sivustolla sähköisessä muodossa, mutta se ei ole täydellinen eikä sitä ole käännetty englannista.
Edellisessä sarjassa, HP-48G :ssä, oli paljon laadukkaampi näppäimistö ja rakenne, mutta tämän sarjan laskimia ei enää valmisteta. Nämä puutteet on osittain korjattu HP 50g - mallissa . Mitä tulee TI-89/92:een, HP-49G:lle on C-kääntäjä, sekä paljon pelejä ja muita ohjelmia. Näiden laskimien parametrit on esitetty taulukossa.
käyttäjän käytettävissä olevan RAM-muistin määrä |
käyttäjän käytettävissä olevan flash-muistin määrä |
näyttö | prosessori | liikkeeseenlaskuvuosi | |
---|---|---|---|---|---|
HP-48GII | 80.7K | Ei | 131x64 | Arm9 48 MHz | 2004 |
HP-49G | 330K | 500K | 131x64 | Saturnus 4 MHz | 2000 |
HP-49G+ | 330K | 500K | 131×80 | Varsi 75 MHz | 2003 |
Casio valmistaa myös ohjelmoitavia laskimia, mukaan lukien värigrafiikkaa, sekä tietojen syöttämistä kynällä (ClassPad 300 Plus) . Casio-laskimet on ohjelmoitu yksinkertaistetulla BASIC:lla, ne toteuttavat laskelmien algebrallisen logiikan. Ohjelmointikyvyltään ne ovat jonkin verran heikompia, muilta osin samalla tasolla tai jopa ylittävät TI:n ja HP:n johtavat mallit.
Ohjelmoitavat laskimet valmistavat myös Sharp ja Citizen . Näiden valmistajien laskimet ovat HP:n, CASIO:n ja TI:n huippumalleihin verrattuna paljon yksinkertaisempia, eikä niissä ole paljon muistia eikä symbolista laskentajärjestelmää.
Tietokonetunnit | |
---|---|
Tehtävien mukaan | |
Tietojen esittämisen avulla | |
Numerojärjestelmän mukaan | |
Työympäristön mukaan | |
Ajanvarauksella | |
Supertietokoneet | |
Pieni ja mobiili |