プログラム電卓
プログラム電卓は、コンピュータのようにプログラムを格納し、プログラム制御によって自動的に複雑な計算を行うことができる電卓である。プログラムは、細長い磁気カードやROMカートリッジにセーブしたり、バッテリーバックアップされたRAMに格納しておいたりする。BASICなどの高水準言語でプログラミングできるものはポケットコンピュータなどとも呼ばれる。
1990年代初め以降、プログラム電卓はグラフ電卓へと進化している。ドットマトリクス方式の液晶ディスプレイが安価に大量生産できるようになるまでは、プログラム電卓のディスプレイ部分は1行の数字または英数字しか表示できないものだった。
プログラミング
プログラム電卓は、プログラムを書いて格納することができ、難しい問題を解いたり、複雑な手続きを自動化したりできる。
元々は各電卓独自のコマンド言語によるプログラミングだったが、ハッカーが電卓の主要インタフェースを迂回する方法を発見してアセンブリ言語でプログラムを書くようになり、テキサス・インスツルメンツを代表とする電卓メーカーがネイティブモードのプログラミングをサポートしはじめた。まず、そのようなコードを利用可能にするフックを公開し、後に通常のユーザインタフェースで直接そのようなプログラムを扱えるよう機能を整えていった。
電卓向けのプログラムはインターネット上に多数存在する。そういったプログラムをパーソナルコンピュータにダウンロードし、専用のリンクケーブルや赤外線リンクやメモリカード経由で電卓にアップロードすることができる。また、エミュレータを使えばPC上で直接実行できる。
それを利用してプログラム電卓向けに他のプログラミング言語のインタプリタやコンパイラのプログラムを書くことも可能である。例えば、TI-83やTI-84には BBC Micro のBASICが既に移植されており、他にもFORTRAN、AWK、Pascal、REXX、Perl、Common Lisp、Python、tcl、UNIX上の各種シェルなどの移植が議論されている。
プログラム電卓向けのソフトウェアとしては、数学や科学に関連した問題を解くものや、ゲーム、デモなどがある。その多くは一般ユーザーが作り、フリーウェアやオープンソースとして公開しているが、教育および科学技術計算市場向けの有償ソフトウェアも存在する。
グラフ電卓は表示画面が大きいため、スクロールしなくてもソースコードを複数行表示でき、単なるプログラム電卓よりもプログラミングが容易である。