Programmerbar miniräknare
Programmerbara räknare är räknare som automatiskt kan utföra en sekvens av operationer under kontroll av ett lagrat program . De flesta är Turing kompletta , och som sådana är de teoretiskt generella datorer. Däremot är deras användargränssnitt och programmeringsmiljöer specifikt skräddarsydda för att göra småskaliga numeriska beräkningar bekväma snarare än allmän användning.
De första programmerbara räknarna som IBM CPC använde hålkort eller andra media för programlagring. Handhållna elektroniska miniräknare lagrar program på magnetremsor, flyttbara skrivskyddade minneskassetter, flashminne eller i batteristödt läs-/skrivminne.
Sedan början av 1990-talet tillhör de flesta av dessa flexibla handhållna enheter klassen av grafräknare . Före masstillverkningen av billiga matris- LCD-skärmar hade programmerbara miniräknare vanligtvis en enrads numerisk eller alfanumerisk display. De fyra stora tillverkarna av programmerbara räknare är Casio , Hewlett-Packard , Sharp och Texas Instruments . Alla ovanstående har också gjort fickdatorer tidigare, speciellt Casio och Sharp.
Många miniräknare av den här typen är monokroma LCD-skärmar, vissa är fyrfärgade (röd eller orange, grön, blå och svart), eller, i fallet med vissa maskiner på toppen av raden från och med januari 2022, färger som liknar bildskärmar som visar 16 eller 32-bitars grafik. Eftersom de används för grafiska funktioner är skärmarna på dessa maskiner pixeladresserbara . Vissa har en pekskärm, summer eller andra ljudproducenter, interna klockor, modem eller andra anslutningsenheter inklusive IrDA-sändtagare, flera typer av portar för kringutrustning som skrivare och portar för minneskort av ett antal olika typer.
Den breda tillgängligheten och låga kostnaderna för persondatorer inklusive bärbara datorer , smartphones och surfplattor gjorde gradvis programmerbara miniräknare föråldrade för de flesta applikationer. Men de är fortfarande populära inom gymnasieutbildningen . Specifika kalkylatormodeller krävs ofta för användning i många matematikkurser. Deras fortsatta användning i utbildning motiveras vanligtvis av den strikt kontrollerbara funktionalitet som finns tillgänglig. Kalkylatorerna har till exempel vanligtvis inte direkt internetåtkomst och kan därför inte användas för olaglig hjälp vid tentor. De återstående tillverkarna av programmerbara miniräknare ägnar mycket kraft åt att uppmuntra fortsatt användning av dessa miniräknare i matematik på gymnasiet.
Tidigare enheter
Kalkylatorprogrammering
Programmerbara miniräknare låter användaren skriva och lagra program i räknaren för att lösa svåra problem eller automatisera en komplicerad procedur.
Programmeringsmöjlighet förekommer oftast (men inte enbart) i grafräknare , eftersom den större skärmen tillåter att flera rader med källkod kan visas samtidigt (dvs. utan att behöva rulla till nästa/föregående visningsrad). Ursprungligen behövde programmering av räknare göras på räknarens eget kommandospråk, men allt eftersom räknarhackare upptäckte sätt att kringgå miniräknarens huvudgränssnitt och skriva assemblerprogram , började räknarföretag (särskilt Texas Instruments ) stödja programmering i native-mode på deras kalkylatorhårdvara, först avslöjar krokarna som används för att göra det möjligt för sådan kod att fungera, och senare explicit bygga in faciliteter för att hantera sådana program direkt från användargränssnittet.
Många program skrivna för miniräknare finns på internet . Användare kan ladda ner programmen till en persondator och sedan ladda upp dem till kalkylatorn med en specialiserad länkkabel , infraröd trådlös länk eller via ett minneskort. Ibland kan dessa program också köras via emulatorer på datorn.
Programmering av dessa maskiner kan göras på maskinen, på PC-sidan och laddas upp som källkod, eller kompileras på PC-sidan och laddas upp som med Flash och vissa C/C++-implementationer. Förutom språkpaket på datorsidan som tigcc, hpgcc och andra innehåller PC-länkmjukvaran som är tillgänglig för TI-, HP-, Casio- och Sharp-kalkylatorer programredigerare; det finns också SDK:er, emulatorer och andra verktyg för användning på datorsidan, och andra tillverkare och tredjepartsverktyg som TI++-redigeraren. Program, data och så vidare kan också utbytas mellan liknande maskiner via samma portar på kalkylatorn som används för PC-anslutning. Inbyggda programmeringsverktyg som använder icke-modersmålsimplementeringar inkluderar On-Board C-kompilatorn för Casio-kalkylatorer i fx-serien och TI-83 BBC Basic-porten.
En möjlighet som härrör från ovanstående är att skriva tolkar, kompilatorer och översättarprogram för ytterligare språk för programmering av maskinerna; BBC Basic har redan porterats till TI-83 och -84 -serien och andra inbyggda språk och programmeringsverktyg som diskuteras av många inkluderar Fortran, awk, Pascal, Rexx, Perl, Common Lisp, Python, tcl och olika Unix-skal.
Vanligt tillgängliga program för miniräknare inkluderar allt från matematik / vetenskapsrelaterade problemlösare till tv-spel , såväl som så kallade demos . Mycket av denna kod är användarskapat gratisprogram eller till och med öppen källkod , även om kommersiell programvara, särskilt för utbildnings- och vetenskaps-/teknikmarknader, också är tillgänglig. Programmerbara miniräknare har stora webbplatser med information, dokumentation, anslagstavlor, verktyg för nedladdning och andra saker som är användbara för denna strävan; huvudsajterna för varje tillverkares kalkylatorer drivs av tredje part med varierande grad av samarbete från företagen själva: nämligen HPCalc.org, TICalc.org och CasioCalc.org, (qqv.) med SharpCalc.org-domänen som nyligen köptes av en organisation som indikerade avsikt att skapa en webbplats som liknar de tre andra, plus information om Sharps fickdatorer. Företagen själva har även sajter som TIEducation.com med information och verktyg för maskinerna.
En TI-59 med ett magnetiskt minneskort som sätts in i kortläsaren på sidan.
HP-41CX med magnetkortläsare och termoskrivare
Ett komplett utbud av programmerbara miniräknare utvecklades i före detta Sovjetunionen . Några av dem (som denna MK-52 ) användes även i rymduppdrag.
En äldre modell FX-602P i fungerande skick
HP 50g grafräknare, med ekvationsredigeraren som används
Casio ClassPad 300 kalkylator med pekskärm
TI-Nspire från Texas Instruments
Programmeringsspråk
Programmering av tangenttryckningar
I de första dagarna använde de flesta programmerbara räknare ett mycket förenklat programmeringsspråk, ofta baserat antingen på att registrera faktiska tangenttryckningar eller bytekod om tangenttryckningarna slogs samman. Miniräknare som stöder sådan programmering var Turing-kompletta om de stödde både villkorliga uttalanden och indirekt adressering av minnet. Anmärkningsvärda exempel på kompletta Turing-räknare var Casio FX-602P-serien, HP -41 och TI-59 . Tangentslagsprogrammering används fortfarande i miniräknare som HP 35s och HP-12C .
GRUNDLÄGGANDE
BASIC är ett utbrett programmeringsspråk som vanligtvis är anpassat till stationära datorer och fickdatorer. De vanligaste språken som nu används i räknare med hög räckvidd är proprietära dialekter i BASIC -stil som används av Casio ( Casio BASIC eller BasicLike) och TI ( TI-BASIC ) . Dessa BASIC-dialekter är optimerade för miniräknare, och kombinerar fördelarna med BASIC och tangenttryckningsprogrammering. De har lite gemensamt med mainstream BASIC. Versionen för Ti-89 och efterföljande är mer komplett, inklusive hela uppsättningen av sträng- och teckenmanipuleringsfunktioner och uttalanden i standard Basic.
En komplett port av BBC Basic till TI-83-underfamiljen av miniräknare är nu tillgänglig. Den installeras via en kabel eller IrDA-anslutning med en dator.
RPL
RPL är ett speciellt Forth -liknande programmeringsspråk som används av Hewlett-Packard i dess högklassiga enheter. Den första enheten med RPL-kalkylator var HP-28C som släpptes 1987.
Språket PPL introducerades med HP Prime- kalkylatorn och är ungefär som Pascal .
hopsättning
En assembler integrerad i TI 89 och relaterade miniräknare tillkännagavs och släpptes 2014.
Maskinspråksprogrammering avråddes ofta på tidiga kalkylatormodeller; dock upptäckte dedikerade plattformshackare sätt att kringgå de inbyggda tolkarna på vissa modeller och programmera räknaren direkt i assemblerspråk , en teknik som först upptäcktes och användes på TI-85 på grund av ett programmeringsfel i en lägesväxlingsnyckel . [ citat behövs ] När TI-83 kom ut hade TI och HP insett behovet av att tillgodose supportbehoven hos hemmabryggare och börjat göra assemblerspråksbibliotek och dokumentation tillgängliga för blivande utvecklare. Mjukvara, särskilt spel, skulle nu kunna vara nästan lika snabb och lika grafisk som deras Game Boy- motsvarigheter, och i synnerhet TI skulle senare formalisera monteringsprogrammering till stöd för paketerade applikationer för framtida miniräknare som TI-83 Plus och TI-89 ; HP inkluderar visst inbyggt stöd för assembler-programmering på HP-50g , dess nuvarande toppmodell för kalkylator.
Program och verktygssatser som tillåter inbyggd monteringsliknande programmering (ofta Intel 80x86 även om den faktiska processorn i räknaren är något helt annat som ett Zilog- eller Motorola-chip) är i betastadiet i minst två implementeringar – den ursprungliga Basic-varianten kan förbättras med användardefinierade funktioner och procedurer samt assembly- och C-moduler utvecklade på en dator och laddade upp till kalkylatorn som gör det möjligt att skriva och köra "pseudo assembly"-program precis som man skulle göra med Basic-typ. Andra språk som Rexx, awk, Perl och vissa Unix-skal kan också implementeras på detta sätt på många miniräknare av denna typ.
Andra språk
GCC - utvecklingssviten är tillgänglig för flera modeller av Casio-, HP- och TI-räknare, vilket innebär att C , C++ , Fortran 77 och inline-sammansättningsspråk kan användas för att utveckla ett program på datorsidan och sedan ladda upp det till räknaren.
Projekt under utveckling av tredje part inkluderar omvandlare ombord och/eller på datorsidan, tolkar, kodgeneratorer, makrosammansättare eller kompilatorer för Fortran , andra grundläggande varianter, awk , C , Cobol , Rexx , Perl , Python , Tcl , Pascal , Delphi och operativsystemskal som DOS/Win95-batch, OS/2-batch, WinNT/2000-skal, Unix-skal och DCL .
Många TI-, Casio-, Sharp- och HP-modeller har Lua-tolkar som är en del av standardkonfigurationen eller kan läggas till valfritt.
Vissa miniräknare kör en delmängd av Fortran 77 som kallas Mini-Fortran; kompilatorn finns på räknaren så det behövs inte anslutas till en PC för att lägga in program på maskinen.
OnCalc C-kompilatorn för Casio fx-9860-serien är nu tillgänglig. Sharp PC G850V fickdator har en inbyggd C-kompilator förutom en assembler och en Basic-tolk.
Ihållande minne
En viktig egenskap hos programmerbara miniräknare är tillgången till någon form av beständigt minne. Utan beständigt minne måste program återinföras när strömmen bryts, vilket gör enheten besvärlig. Beständigt minne kan vara internt eller på en separat enhet. Vissa programmerbara miniräknare använder båda systemen.
Magnetisk kortläsare/skrivare
Magnetiska kortläsare var bland de första beständiga minnesalternativen som fanns tillgängliga. De inmatade programmen lagras på magnetremsor. De var lätta att transportera och läsaren/skribenten var kompakt i storlek. Men både läsaren/skribenten och magnetremsorna var ganska dyra. De sista och mest anmärkningsvärda enheterna som använde magnetremsor var HP-41C och TI-59 .
Kontinuerligt minne
Kontinuerligt minne förlorar inte sitt innehåll när räknaren stängs av. Med kontinuerligt minne kan användaren till exempel byta batterier utan att förlora de inmatade programmen.
Kassettband
Compact Cassettes erbjöd ett enkelt, billigt alternativ till magnetkort. Vanligtvis användes en gränssnittsmodul, såsom Casio FA-1 , för att ansluta räknaren till en vanlig kassettbandspelare, och digitala data kodades som frekvensskiftande ljudsignaler.
Sharp och Hewlett-Packard sålde även dedikerade mikro- eller minikassettbandspelare som kopplades direkt till räknaren. Även om dessa inställningar är mer praktiska och pålitliga är vi också dyrare.
Halvkontinuerligt minne
När minneskraven ökade blev det svårare att skapa äkta kontinuerligt minne och utvecklare sökte alternativ. Med semi-kontinuerligt minne bevarades innehåll endast om specifika batteribytesregler iakttogs. De vanligaste reglerna var:
- Ett speciellt reservbatteri skulle säkerställa att minnet inte gick förlorat medan huvudbatterierna byttes.
- Batteriborttagning och batteribyte fick slutföras på relativt kort tid. Till exempel, med HP 35s , måste batteribytet slutföras på mindre än 2 minuter efter borttagning.
- Minst två huvudbatterier användes och kunde bara bytas ut ett i taget.
PC-anslutning
Program och data överförs till en persondator för lagring. Överföringen görs med följande anslutningsmetoder (kronologisk ordning av utseende) RS-232 , IrDA och USB . Denna metod har fördelen av att vara mycket kostnadseffektiv och är vanligtvis snabbare än kassettgränssnittet. Dessa fördelar uppvägs av behovet av en persondator. Ett tidigt exempel på en PC-anslutning är Casio FX-603P i kombination med Casio FA-6- gränssnittet. I denna uppsättning gjordes överföringen i vanlig text så att programmet och data kunde lagras och redigeras med en vanlig textredigerare .
Flashminne
Programmerbara miniräknare och fickdatorer
Under hela 1980-talet och början av 1990-talet konkurrerade programmerbara miniräknare med fickdatorer , med avancerade miniräknare som delade många likheter. Till exempel var båda enhetstyperna programmerbara i ostrukturerad BASIC och med några få undantag innehöll QWERTY- tangentbord. Men det fanns också några skillnader:
- BASIC-programmerbara miniräknare hade ofta ett extra "kalkylatorliknande" tangentbord och ett speciellt miniräknareläge där systemet betedde sig som en vetenskaplig miniräknare .
- Fickdatorer erbjöd ofta ytterligare programmeringsspråk som tillval. Casio PB-2000 erbjöd till exempel ANSI-C , BASIC , Assembler och Lisp .
Företag hade ofta båda enhetstyperna i sin produktportfölj. Casio, till exempel, sålde några BASIC-programmerbara miniräknare som en del av deras "fx-" miniräknare och fickdator den dedikerade "pb-"-serien medan Sharp marknadsförde alla BASIC-programmerbara enheter som fickdatorer.
Relaterade verktyg
Vissa programmerbara miniräknare har en eller flera metoder för att ansluta till en PC för utbyte av data, program och programvara. Dessa metoder inkluderar IrDA, andra trådlösa, seriella portar, inklusive USB eller RS-232 via.125 tum eller annan storlek ljudpluggar, etc.
Några av de senaste programmerbara räknarna innehåller mobilmodem som en extra kanal för anslutning.
De programmerbara räknarna kan i många fall, via dessa anslutningar, användas med kringutrustning som dataloggrar och gränssnitt för instrument som termometrar, pH-mätare, väderinstrument av alla slag, ljusmätare, ljudsonder och mikrofoner, dynamometrar, tryckmätare, voltmetrar , amperemetrar, ohm-mätare, apparater för mätning av atmosfärisk elektricitet, jonräknare, geigerräknare och scintillometrar, höjdmätare, vågar, accelerometrar och många andra. Vissa maskiner kan också användas med oscilloskop och deras kringutrustning. Andra kan konfigureras – till exempel insamling av biofeedback-data genom att ansluta enheter för puls, blodtryck, syremättnad, galvaniskt hudmotstånd, kroppstemperatur och till och med EKG- och EEG-sonder till en datalogger som sedan ansluts till kalkylatorn och sedan eller senare en PC.
HP:s programmerbara och andra har ett IrDA-gränssnitt som gör att de kan samverka med skrivare som är speciellt utformade för miniräknare, HP:s huvudlinjer av laserskrivare, datorer, andra miniräknare och andra enheter.
Också allmänt tillgängliga från många företag är små skrivare gjorda speciellt för miniräknare som tenderar att använda kassabandspapper, portar och kablar för att ansluta miniräknare till en dator och/eller annan miniräknare, kassettbandspelare för inspelning av program och data, overheadprojektorskärmar, och kontakter för extra displayenheter. De tidigare programmerbara miniräknarna, såväl som fickdatorerna som nämnts ovan, hade också sådant som videogränssnitt för tv-apparater och kompositbildskärmar, 2½-tums minidiskettenheter, streckkodsläsare och standard RS-232-anslutning som gav andra t.ex. saker som modem, externa hårddiskar och mer. Skrivarutbudet för fickdatorerna var också lite bredare, inklusive termo, slag, punktmatris, daisy wheel, 4-färgspenna, skrivare av den typ som används i enklare utskriftsräknare. Vissa miniräknare och fickdatorer hade externa 3½ och 5¼ tums diskettenheter, kablar för sammankoppling av två kassettbandspelare, vaggor som innehöll en skrivare och/eller kassettbandspelare som maskinen gled in i och så vidare.
Det är också möjligt att ansluta vissa maskiner till vissa elektriska skrivmaskiner för användning som skrivare (skrivmaskinerna kan också anslutas till PC för detta ändamål, och gränssnittet tenderar att vara en standard RS-232 och/eller DIN-kontakt), och i vissa fall för att komma åt skrivmaskinens diskett- eller mikrodiskettenheter.
Lista över valda programmerbara miniräknare
- Casio Casio
- FX -502P-serien · Casio FX - 602P-serien · Casio FX -603P · FX-702P · FX -850P · Casio 9850 -serien · Casio 9860-serien · Casio ClassPad 300
- Elektronika
- B3-21 · B3-34 · · MK - 6 MK-52
- Hewlett-Packard
- HP-19C · HP-25 · HP-25C · HP -28C · HP-28S · HP-29C · HP-32S · HP -32sII · HP 35s · HP - 41C · HP-41CV · HP -41CX · HP-42S · HP-48SX · HP-48G · HP-48GX · HP-49 · HP-50 · HP-65 · HP-67 · HP-97
- NumWorks
- Sharp
- Sharp PC-1350 · PC-1401 · PC -1403 EL-9600c · EL-9900
- SwissMicros
- SwissMicros DM11 SwissMicros DM12 · SwissMicros DM15 · SwissMicros DM16 · SwissMicros DM41 · SwissMicros DM -
- · 42 5-2 SR · 5 TI - 58 C · TI-59 · Galaxy 67 · TI-83 Plus · TI-84 Plus · TI-85 · TI-89 · TI-92 · Voyage 200 · TI-Nspire
- Texas Instruments-
Se även
- ^ Kosoff, Maya (25 november 2019). "Big Calculator: How Texas Instruments Monopolised Math Class" . GEN . Medium . Hämtad 30 mars 2022 .
- ^ http://www.ticalc.org/archives/files/fileinfo/300/30032.html
- ^ TIEducation.com
- ^ "Programmera Casio FX-7400G+" (PDF) . Hämtad 2014-03-23 .
- ^ "Programmera Casio BASIC på CFX-9850-serien" (PDF) . Hämtad 2014-03-23 .
- ^ "TI-Basic Developer" . Tibasicdev.wikidot.com . Hämtad 2014-03-23 .
- ^ Beskrivning av HP-28C i museet av HP-räknemaskiner
- ^ iE HP 9810A introducerades 1971
- ^ Beskrivning av HP-15C i museet av HP-räknemaskiner
- ^ Beskrivning av FX-502P och FA-1 på Voidware
- ^ HP-32s användarhandbok Arkiverad 2008-08-21 på Wayback Machine Sida 289ff
- ^ Beskrivning av PB-2000 i Caz Pocket Computers
- ^ Bilden på FX-700P och FX-702P visar texten "programmerbar kalkylator"