History
Features
Computer algebra systems
Some graphing calculators have aLaboratory usage
Many graphing calculators can be attached to devices like electronicGames and utilities
Graphing calculators in education
* North America – high school mathematics teachers allow and even encourage their students to use graphing calculators in class. In some cases (especially inProgramming
Most graphing calculators, as well as some non-graphing scientific calculators and programmer's calculators can be programmed to automate complex and frequently used series of calculations and those inaccessible from the keyboard. The actual programming can often be done on a computer then later uploaded to the calculators. The most common tools for this include the PC link cable and software for the given calculator, configurable text editors or hex editors, and specialized programming tools such as the below-mentioned implementation of various languages on the computer side. Earlier calculators stored programs on magnetic cards and the like; increased memory capacity has made storage on the calculator the most common implementation. Some of the newer machines can also use memory cards. Many graphing and scientific calculators will tokenize the program text, replacing textual programming elements with short numerical tokens. For example, take this line of TI-BASIC code:Disp /code>
. In a conventional programming language, this line of code would be nine characters long (eight not including a newline character). For a system as slow as a graphing calculator, this is too inefficient for an interpreted language. To increase program speed and coding efficiency, the above line of code would be only three characters. "Disp_" as a single character, " as a single character, and a newline character. This normally means that single byte chars will query the standard ASCII
ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because of ...
chart while two byte chars (the Disp_ for example) will build a graphical string of single byte characters but retain the two byte character in the program memory. Many graphical calculators work much like computers and use versions of 7-bit, 8-bit or 9-bit ASCII-derived character sets or even UTF-8
UTF-8 is a variable-width encoding, variable-length character encoding used for electronic communication. Defined by the Unicode Standard, the name is derived from ''Unicode'' (or ''Universal Coded Character Set'') ''Transformation Format 8-bit'' ...
and Unicode
Unicode, formally The Unicode Standard,The formal version reference is is an information technology Technical standard, standard for the consistent character encoding, encoding, representation, and handling of Character (computing), text expre ...
. Many of them have a tool similar to the character map
Character Map is a utility included with Microsoft Windows operating systems and is used to view the characters in any installed font, to check what keyboard input (Alt code) is used to enter those characters, and to copy characters to the clipboa ...
on Windows.
They also have BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
like functions such as chr$, chr, char, asc, and so on, which sometimes may be more Pascal or C like. One example may be use of ''ord'', as in Pascal
Pascal, Pascal's or PASCAL may refer to:
People and fictional characters
* Pascal (given name), including a list of people with the name
* Pascal (surname), including a list of people and fictional characters with the name
** Blaise Pascal, Fren ...
, instead of the ''asc'' of many Basic variants, to return the code of a character, i.e. the position of the character in the collating sequence of the machine.
A cable and/or IrDA
The Infrared Data Association (IrDA) is an industry-driven interest group that was founded in 1994 by around 50 companies. IrDA provides specifications for a complete set of protocols for wireless infrared communications, and the name "IrDA" also ...
transceiver connecting the calculator to a computer make the process easier and expands other possibilities such as on-board spreadsheet, database, graphics, and word processing programs. The second option is being able to code the programs on board the calculator itself. This option is facilitated by the inclusion of full-screen text editors and other programming tools in the default feature set of the calculator or as optional items. Some calculators have QWERTY
QWERTY () is a keyboard layout for Latin-script alphabets. The name comes from the order of the first six Computer keyboard keys#Types, keys on the top left letter row of the keyboard ( ). The QWERTY design is based on a layout created f ...
keyboards and others can be attached to an external keyboard which can be close to the size of a regular 102-key computer keyboard. Programming is a major use for the software and cables used to connect calculators to computers.
The most common programming languages used for calculators are similar to keystroke-macro languages and variants of BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
. The latter can have a large feature set—approaching that of BASIC as found in computers—including character and string manipulation, advanced conditional and branching statements, sound, graphics, and more including, of course, the huge spectrum of mathematical, string, bit-manipulation, number base, I/O, and graphics functions built into the machine.
Languages for programming calculators fall into all of the main groups, i.e. machine code, low-level, mid-level, high-level languages for systems and application programming, scripting, macro, and glue languages, procedural, functional, imperative &. object-oriented programming can be achieved in some cases.
Most calculators capable to being connected to a computer can be programmed in assembly language and machine code, although on some calculators this is only possible through using exploits. The most common assembly and machine languages are for TMS9900
Introduced in June 1976, the TMS9900 was one of the first commercially available, single-chip 16-bit microprocessors. It implemented Texas Instruments' TI-990 minicomputer architecture in a single-chip format, and was initially used for low-end m ...
, SH-3
The Sikorsky SH-3 Sea King (company designation S-61) is an American twin-engined anti-submarine warfare (ASW) helicopter designed and built by Sikorsky Aircraft. A landmark design, it was one of the first ASW rotorcraft to use turboshaft engin ...
, Zilog Z80, and various Motorola
Motorola, Inc. () was an American Multinational corporation, multinational telecommunications company based in Schaumburg, Illinois, United States. After having lost $4.3 billion from 2007 to 2009, the company split into two independent p ...
chips (e.g. a modified 68000) which serve as the main processors of the machines although many (not all) are modified to some extent from their use elsewhere. Some manufacturers do not document and even mildly discourage the assembly language programming of their machines because they must be programmed in this way by putting together the program on the PC and then forcing it into the calculator by various improvised methods.
Other on-board programming languages include purpose-made languages, variants of Eiffel
Eiffel may refer to:
Places
* Eiffel Peak, a summit in Alberta, Canada
* Champ de Mars – Tour Eiffel station, Paris, France; a transit station
Structures
* Eiffel Tower, in Paris, France, designed by Gustave Eiffel
* Eiffel Bridge, Ungheni, M ...
, Forth
Forth or FORTH may refer to:
Arts and entertainment
* ''forth'' magazine, an Internet magazine
* ''Forth'' (album), by The Verve, 2008
* ''Forth'', a 2011 album by Proto-Kaw
* Radio Forth, a group of independent local radio stations in Scotla ...
, and Lisp
A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech.
Types
* A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lisping ...
, and Command Script facilities which are similar in function to batch/shell programming and other glue languages on computers but generally not as full featured. Ports of other languages like BBC BASIC and development of on-board interpreters for Fortran, REXX
Rexx (Restructured Extended Executor) is a programming language that can be interpreted or compiled. It was developed at IBM by Mike Cowlishaw. It is a structured, high-level programming language designed for ease of learning and reading. ...
, AWK
AWK (''awk'') is a domain-specific language designed for text processing and typically used as a data extraction and reporting tool. Like sed and grep, it is a filter, and is a standard feature of most Unix-like operating systems.
The AWK langu ...
, Perl
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was offici ...
, Unix shells (e.g., bash
Bash or BASH may refer to:
Arts and entertainment
* ''Bash!'' (Rockapella album), 1992
* ''Bash!'' (Dave Bailey album), 1961
* '' Bash: Latter-Day Plays'', a dramatic triptych
* ''BASH!'' (role-playing game), a 2005 superhero game
* "Bash" ('' ...
, zsh
The Z shell (Zsh) is a Unix shell that can be used as an interactive login shell (computing), shell and as a command line interpreter, command interpreter for shell scripting. Zsh is an extended Bourne shell with many improvements, including som ...
), other shells ( DOS/Windows 9x
Windows 9x is a generic term referring to a series of Microsoft Windows computer operating systems produced from 1995 to 2000, which were based on the Windows 95 kernel and its underlying foundation of MS-DOS, both of which were updated in subs ...
, OS/2, and Windows NT
Windows NT is a proprietary graphical operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems sc ...
family shells as well as the related 4DOS
4DOS is a command-line interpreter by JP Software, designed to replace the default command interpreter COMMAND.COM in Microsoft DOS and Windows. It was written by Rex C. Conn and Tom Rawson and first released in 1989. Compared to the default, ...
, 4NT and 4OS2
4OS2 is the OS/2 analogue of 4NT and 4DOS by JP Software, Inc. JP Software discontinued 4OS2, TCMDOS2 and TCMD16, making version 3.0, 2.0, 2.0 the final version of these. The code for 4OS2 has been released, and is maintained, first by SciTech ...
as well as DCL), COBOL
COBOL (; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural and, since 2002, object-oriented language. COBOL is primarily us ...
, C, Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
, Tcl
TCL or Tcl or TCLs may refer to:
Business
* TCL Technology, a Chinese consumer electronics and appliance company
**TCL Electronics, a subsidiary of TCL Technology
* Texas Collegiate League, a collegiate baseball league
* Trade Centre Limited, a ...
, Pascal
Pascal, Pascal's or PASCAL may refer to:
People and fictional characters
* Pascal (given name), including a list of people with the name
* Pascal (surname), including a list of people and fictional characters with the name
** Blaise Pascal, Fren ...
, Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracle ...
, ALGOL, and other languages are at various levels of development.
Some calculators, especially those with other PDA-like functions have actual operating systems including the TI proprietary OS for its more recent machines, DOS, Windows CE, and rarely Windows NT 4.0 Embedded
Windows NT 4.0 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It is the direct successor to Windows NT 3.51, which was released to manufacturing on July 31, 1996, and then to retail ...
et seq, and Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
. Experiments with the TI-89, TI-92, TI-92 Plus and Voyage 200
The TI-92 series of graphing calculators are a line of calculators produced by Texas Instruments. They include: the TI-92 (1995), the TI-92 II (1996), the TI-92 Plus (1998, 1999) and the Voyage 200 (2002). The design of these relatively large ...
machines show the possibility of installing some variants of other systems such as a chopped-down variant of CP/M-68K
CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initiall ...
, an operating system which has been used for portable devices in the past.
Tools which allow for programming the calculators in C/C++ and possibly Fortran and assembly language are used on the computer side, such as HPGCC
The HP 49/50 series are Hewlett-Packard (HP) manufactured graphing calculators. They are the successors of the popular HP 48 series.
There are five calculators in the 49/50 series of HP graphing calculators. These calculators have both ...
, TIGCC {{Infobox software
, name = TIGCC
, logo =
, caption = The Logo for the TIGCC Project.
, developer = The TIGCC Team
, latest_release_version = 0.96-beta8
, latest_release_date = {{release date and age, 2006, 10, 31
, operating_system = Linux/Unix, ...
and others. Flash memory is another means of conveyance of information to and from the calculator.
The on-board BASIC variants in TI graphing calculators and the languages available on HP-48 type calculators can be used for rapid prototyping by developers, professors, and students, often when a computer is not close at hand.
Most graphing calculators have on-board spreadsheets which usually integrate with Microsoft Excel on the computer side. At this time, spreadsheets with macro and other automation facilities on the calculator side are not on the market. In some cases, the list, matrix, and data grid facilities can be combined with the native programming language of the calculator to have the effect of a macro and scripting enabled spreadsheet.
See also
* Personal Digital Assistant
A personal digital assistant (PDA), also known as a handheld PC, is a variety mobile device which functions as a personal information manager. PDAs have been mostly displaced by the widespread adoption of highly capable smartphones, in partic ...
* :Graphing calculators
* :Plotting software
* Scientific calculator
References
Further reading
* Dick, Thomas P. (1996). Much More than a Toy. Graphing Calculators in Secondary school Calculus. In P. Gómez and B. Waits (Eds.), Roles of Calculators in the Classroom pp 31–46). Una Empresa Docente.
* Ellington, A. J. (2003). A meta-analysis of the effects of calculators on students' achievement and attitude levels in precollege mathematics classes. Journal for Research in Mathematics Education. 34(5), 433–463.
* Heller, J. L., Curtis, D. A., Jaffe, R., & Verboncoeur, C. J. (2005). Impact of handheld graphing calculator use on student achievement in algebra 1: Heller Research Associates.
* Khoju, M., Jaciw, A., & Miller, G. I. (2005). Effectiveness of graphing calculators in K-12 mathematics achievement: A systematic review. Palo Alto, CA: Empirical Education, Inc.
* National Center for Education Statistics. (2001). The nation's report card: Mathematics 2000. (No. NCES 2001-571). Washington DC: U.S. Department of Education.
{{Authority control
Computer-related introductions in 1985
Japanese inventions
Programmable calculators
20th-century inventions