JP2662225B2 - 計算装置 - Google Patents

計算装置

Info

Publication number
JP2662225B2
JP2662225B2 JP62271612A JP27161287A JP2662225B2 JP 2662225 B2 JP2662225 B2 JP 2662225B2 JP 62271612 A JP62271612 A JP 62271612A JP 27161287 A JP27161287 A JP 27161287A JP 2662225 B2 JP2662225 B2 JP 2662225B2
Authority
JP
Japan
Prior art keywords
stack
key
function
algebraic expression
objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP62271612A
Other languages
English (en)
Other versions
JPS63118841A (ja
Inventor
ガーベ・エル・アイゼンシュタイン
ローレンス・ダブリュー・グロド
ポール・ジェイ・マクレラン
ロバート・エム・ミラー
チャールズ・エム・パトン
ウイリアム・シー・ウイクス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
HP Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HP Inc filed Critical HP Inc
Publication of JPS63118841A publication Critical patent/JPS63118841A/ja
Application granted granted Critical
Publication of JP2662225B2 publication Critical patent/JP2662225B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は一般に計算機に関し、更に詳細には数学式を
扱うことができるユーザー・インターフェースを有する
記号代数(symbolic algebra)計算機に関する。 〔従来の技術〕 計算機は一般に、中央処理装置、計算機の内蔵(buil
t−in)命令(インストラクション)セットを備えた読
出し専用メモリ(ROM)、ユーザ・データおよびプログ
ラムを保持するアンダムアクセスメモリ(RAM)、計算
機をユーザが制御するキーボード、および結果をユーザ
に示す表示装置を組合せたパッケージから構成されてい
る。キーボードはデータあるいは命令を入れるための文
字キーと、単一キーストロークでオペレーションの実行
ができる即時実行(immediate−execute)キーとを備え
ている。 計算機はそのユーザ・インターフェースの点で、すな
わち、計算機がキーストロークを解釈し、結果を保存し
あるいは表示する方法において相異がある。特に重要な
のは計算機が数学式(mathema−tical expression)の
評価を処理する方法である。従来の計算機は、以下のよ
うな三つの異なる方法を利用している。 逆ポーランド表記法計算機では、引数は(アーギュメ
ント)は大きさが一定の後入れ先出しのスタックに入れ
られ、数学関数は最上部の引数に適用される。関数値は
スタックの最上部に戻され、ここで後続関数の引数とし
て利用することができる。この方法にはキーストローク
効率、中間結果がわかること、演算子の優位性が明確で
あること、および一様性という長所がある。この方法に
は引数および演算子の入力の順序が、書かれた数学式と
いうより伝統的な記法ではなく、いわゆる逆ポートラン
ド表記法に対応するという欠点がある。 直接に式を入力する計算機では、数学式は式の書かれ
た形の複製として入れられ、式全体が入れられてしまっ
てからすべて一度に評価される。その主な長所は書かれ
た式と計算機入力とが似ていることである。欠点はフォ
ーマットに柔軟性が無いこと、部分式の中間結果が無い
こと、および以前の評価の結果を参照する簡単な方法が
無いことである。 いわゆる代数・論理・計算機は前記二つの方法のポス
トフィスク構文(引数が関数の前に入れられるもの)、
およびインフィクス構文(二つの引数に係る関数が二つ
の引数の間に置かれるもの)を混ぜて使っている。+、
−、*、および/のような算術関数はそれらの引数の間
に入れられ、書かれた記法との対応を保つ。一引数の関
数がそれら引数の後に入れられる場合、関数キーが押さ
れると直ちに中間結果の表示ができる。長所は、式の評
価中における、算術演算に係る表記法と中間結果の表示
の表記法との類似性である。中間結果の表示を除き、欠
点は直接的に式を入力する場合と同じである。 従来の計算機はすべて、その一般的なユーザ・インタ
ーフェースとは無関係に、その通常の数学式評価の文脈
内で実数の浮動小数点数を処理するためだけに最適化さ
れているという一般的制限を有している。更に、数学関
数を形式的変数(formal variables)または未評価の式
に適用する能力を備えているものは無かった。 〔発明の概要〕 本発明は次のユーザ・インターフェースを有する計算
機から構成されている。 1. オブジェクト(object)と呼ばれる個別の数学的あ
るいは論理的構成要素(entity)が大きさ不定の(inde
finite size)後入れ先出しスタックに基いて入れら
れ、表示され、処理される。このスタックの内容はユー
ザに見え、計算機のユーザ・インターフェースの中心を
構成している。 2. オブジェクトは幾つかの異なる形式とすることがで
きるが、すべてスタックで一様に処理される。オブジェ
ットの形式はその内部構造および値を決める数学的また
は論理的規則により区別される。オブジェクトの形式に
は次の例があるが、これに限られるものではない。 1. 実数 2. 複素数 3. 実数または複素数ベクトル 4. 実数または複素数マトリックス 5. テキスト文字列 6. オブジェクトのリスト 7. 識別子(名前) 8. 手続オブジェクト。評価されるオブジェクトのシー
ケンスを含む。 オブジェクトは単純オブジェクト(single obj−ec
t)でも複合でもよい。複合オブジェクトは二つ以上の
オブジェクトまたはオブジェクト・ポインタの本体から
構成される。 3. オブシェクトはユーザによって入れられ、その普通
の数学的または論理的構造および値に対応する形で計算
機に表示される。さらに、異なるオブジェクト形式はエ
ントリの際に区別され、特性を示すプリフィクスおよび
ポストフィクスの記号で表示される。エントリにおいて
オブジェクト記号はそれ以後のキーストロークに無関係
にオブジェクト形式を区別するので、オブジェクトの実
際の構造または値をオブジェクトの形式特有の構文規則
に対して計算機がチェックすることができる。論理的
(logical)という言葉は、ここで使用する場合、数学
的、物理的、経済的、あるいはその他の関係を規定する
もののような形のオブジェクトを包含する意味を持って
いる。 4. 計算機のキーは、現在どのエントリモードあるかに
したがって、その動作を変えることができる。即時実行
モードでは、キーは押されたとおりにその定義を実行す
る。延期実行defferred−executeモードまたはアルファ
エントリモードでは、押されたキーは、後の実行のた
め、その「名前」を英数字列として正確に送り返す。モ
ードは現行エントリの性質にしたがって計算機により自
動的にリセットすることができ、あるいは人手で制御す
ることができる。 5. 読出し専用メモリに格納されておりキーと結び付け
られているか結び付けることができる内蔵演算(built
−in operation)は、引数としてオブジェクトをスタッ
クから取り、その結果をスタックに戻す。これら演算
(オペレーション)はオブジェクトをエンティティ全体
として処理することができ、あるいはオブジェクトの内
部構造または値を処理することができる。単一の数学的
または論理的演算を異なるオブジェクト形式、またはオ
ブジェクト形式の組合せに対して適用することが理にか
なっている場合には、演算のすべての変形(versions)
を一つの演算名のもとにまとめることができる。演算自
身は可能なオブジェクト引数を検査し、適切なサブオペ
レーションに分岐しなければならない。 6. 特殊な階層(class)の代数手続きオブジェクトが
設けられており、含まれているオブジェクトは数学式を
表わすように組織され、普通の数式構文にしたがって入
れられ、表示される。対応して、数学関数を表わす内蔵
手順オブジェクトが設けられている。引数として一つ以
上の代数オブジェクトに適用すると、関数は結果の式の
適切な位置に適用された関数オブジェクトを備えた新し
い代数オブジェクトを戻す。 〔実施例〕 計算機 第1図において、第1の部分101と第2の部分102とを
備えた計算装置100が示してある。第1の部分101は英数
字記号を入れるためのキーを含む複数のキーを備えてい
る。 第2の部分102は表示装置(ディスプレイ)103を備え
ている。好ましい実施例では、表示装置103は23字づつ
の4行を表示する、液晶のドット・アレイ表示装置であ
る。表示装置103はアナンシエータ(図示せず)の最上
行をも備えており、これは個別にオブジェクトの実行お
よび/または演算の各種計算機モードを示すのに使用さ
れる。 第2の部分102はまた記してあるような数字キーと機
能キーとを含む複数のキーを備えている。ENTERキー105
は英数字の入力を終了してエントリの処理を始めるのに
使用される(第7A図および第7B図を参照)。シフトキー
107は押された次のキーに、そのキーの上方に記してあ
る、その別の定義を実行させるように動作する。 第2の部分102はまた1例に並んだ6ケのファンクシ
ョンキー(以下、多機能キーとも言う)104を備えてお
り、これは関数または変数の値と関連づけることができ
る。多機能キーが現在どのように定義されているかはこ
れらのキーの直上に表示されたメニュー・ラベルによっ
て、表示装置103の最下文字列に示される。 第1および第2の部分101及び102は、関連する計算機
ファンクションのグループ(メニュー)を6ケから成る
メニュー・サブグループに係る多機能キー104に割当て
る各種キーを備えている。各計算機能に対するメニュー
・ラベルは各キー104の上方に表示される。これらに含
まれている一つにUSERメニュー・キーがあり、これはユ
ーザ変数を自動的に多機能キー104に割当てる。NEXTキ
ー109は、多機能キーの割当てを、現行メニュー内の6
ケの関数から成る次のグループまで進める。このキー10
9のシフトされたファンクション、REVは前の6ケのファ
ンクションを再作動させる。 第2の部分102はまた、赤外線発光ダイオード110を備
えており、これはデータを対応する受信機、典型的には
印刷装置に伝えるのに使用される。 ONキー111はユーザが計算機をオンオフできるように
するとともに、計算機がオンのとき通常の計算機動作を
中断させる特殊な割込みキーである。 本発明の開示するところでは、オブジェクトと称する
個々の数学的または論理的エンティティは、不確定の大
きさの後入れ先出しスタックで表示され、処理されると
いうことができる。精算機の動作はスタック上のオブジ
ェクトの評価に集まっている。オブジェクトはデータ、
名前、あるいは手順とすることができる。データ・オブ
ジェクトは特殊なことは行わず(これらはまさにデータ
である)、名前オブジェクトは他のオブジェクトを参照
し、手続オブジェクトはオブジェクトおよび命令をその
定義で処理する。この計算オペレーションシステムの基
本は、本願出願人の出願に係る昭和62年特許願第133258
号「データ処理装置」に述べられている。 引用したシステムでは、一様構造のデータ対象(オブ
ジェクト)はオブジェクトメモリ内でオブジェクト・ポ
インタと無差別に混合される。オブジェクトはメモリ内
のオブジェクト実行シーケンスのプロローグにアドレス
する。オブジェクト・ポインタは他のオブジェクトにア
ドレスする。オブジェクトは直接にアドレスされようと
間接にアドレスされようと適格に評価される。ポインタ
はオブジェクトまたはオブジェクト・ポインタを選択的
に指示するかあるいはアドレスする。 オブジェクトがポインタにより直接アドレスされる
と、メモリ内のオブジェクトの宛先の宛先がアドレスさ
れ、オブジェクト実行シーケンスが始まる。 オブシェクトが間接的にアドレスされると、ポインタ
はオブジェクト・ポインタにアドレスする。オブジェク
ト・ポインタはオブジェクトにアドレスする。メモリ内
のオブジェクトの宛先がアドレスされ、オブジェクト実
行プロセスが始まる。 更に詳細には、本発明に採用したオブジェクト実行プ
ロセスは実行シーケンスに無差別に含まれているオブジ
ェクトとオブジェクト・ポインタとの双方を正しく且つ
自動的に詳細する。オブジェクトには一様構造が設けら
れているので、オブジェクトはすべて、直接的にまたは
間接的に、無差別に実行することができる。異なる形式
のオブジェクトはやはり一様に構成されている。各々は
少くともプロローグ・アドレス(prologue address)と
本体から構成される。これら二つの部分はメモリ内で連
続している。プロローグ・アドレスはオブジェクトの実
行を記述するメモリ内のプロローグにアドレスする。本
体はデータである。オブジェクトは、そのプロローグ・
アドレス部が指示されるかアドレスされると、指示され
るか、あるいはアドレスされる。 オブジェクトは単純対象でもよいし複合対象でもよ
い。その本体が一つながりのオブジェクトおよび/また
はオブジェクト・ポインタならば、それは複合オブジェ
クトである。 オブジェクトの直接実行では、ポインタは、インター
プリター・ポインタと呼ばれ、オブジェクトのプロロー
グ・アドレスを指す。このプロローグ・アドレスはメモ
リ内の、実行すべきオブジェクトを直接識別するオブジ
ェクト実行のプロローグにアドレスする。オブジェクト
の間接実行では、インタープリター・ポインタはオブジ
ェクト・ポインタを指す。このオブジェクト・ポインタ
は今度は実行すべきオブジェクトであるオブジェクトの
プロローグ・アドレスを指す、すなわちアドレスする。
オブジェクト・ポインタはメモリ内のプロローグをアド
レスしないので、実行すべきオブジェクトを直接識別す
ることはない。プロローグ・アドレスはメモリ内のオブ
ジェクト実行のプロローグをアドレスする。 このようにしてオブジェクト間に各々がプロローグ・
アドレスと本体とを備える構造の一様性を与えることに
より、またメモリ内にオブジェクト実行のプロローグを
設けることにより、更に、インタープリタ・ポインタお
よびオブジェクト・ポインタがオブジェクトのプロロー
グ・アドレス部分を指すことによりそのオブジェクトを
選択的に識別することができることに加えて、インター
プリタ・ポインタがオブジェクト・ポインタを指すこと
ができるようなオブジェクト・ポインタおよびインター
プリタ・ポインタを使用することにより、直接または間
接オブジェクト実行に関するオブジェクトおよびオブジ
ェクト・ポインタの混在を最小限の処理ステップで許容
する簡単な技法が提供される。これによりプログラミン
グが減り、メモリが節約されて、処理のオーバーヘッド
がかなり低減する。 定 義 データ・オブジェクト このオブジェクトはローカル・ユニットとして扱われ
るデータ、すなわち数値データ、文字列(ストリン
グ)、およびオブジェクトのリストを表わす。 名前オブジェクト このオブジェクトはユーザ・メモリに格納(ストア)
されている他のオブジェクトに名前を付ける。ローカル
名前は、手続で作り出すことができ、手続が評価を終了
すると自動的に削除される。 変 数 変数は任意のオブジェクトと一緒に格納されている名
前とを組合せたものである。名前は変数の名前となる。
他のオブジェクトは変数の値あるいは内部である。これ
らは、スタックとは別のユーザ・メモリに一緒に格納さ
れる。変数は番号付きレジスタとほとんどの計算機に見
られるプログラムメモリとを置き換える。 手続オブジェクト このオブジェクトは、該手続オブジェクトが評価され
るとき処理されるオブジェクトおよびコマンドの手続シ
ーケンスを含んでいる。プログラム・オブジェクトは、
スタック、ユーザメモリ、または計算機モードに影響を
およぼすものを含む、オブジェトおよびコマンドのいか
なるシーケンスをも備えることができる。代数オブジェ
クトは限られた数のオブジェクト形式およびコマンドを
備えており、その構文は数学式および方程式と類似であ
る。 プログラム プログラムは本質的にはコマンド行(line)のオブジ
ェクト・フォーム(form)である。コマンド行に入った
オブジェクトおよびコマンドは手続を構成する。その手
続きがプログラム区切り記号で囲まれると、これはその
手続きの後に評価されるオブジェクトとして処理すべき
ことを示す。 式 式は通常の数学の形に対応する構文で入れられ、表示
される数学式を表わす手続である。式を評価するには各
オブジェクトをスタックに載せてそれを評価する。 方程式 方程式は等号「=」で関係づけられている二つの式で
ある。方程式を評価すると新しい方程式が生ずる。新し
い左辺の式は元の左辺の式を評価した結果である。新し
い右辺の式は元の右辺の式を評価した結果である。 コマンド コマンドはプログラムに含めることができる内蔵の手
続きである。コマンド名は、それがコマンド行に現れる
とき(たとえば、DROPまたはSIN)には、計算機に格納
されている非引用(unquoted)手続きオブジェクトの名
前であると考えることができる。 スタック スタックは、それぞれが一つのオブジェクトを持って
いる番号付きレベル(levels)の順番(sequence)であ
る。オブジェクトがレベル1のスタックに入れられる
と、既にスタックに入っているオブジェクトが高いレベ
ルに持上げられる。また、オブジェクトがレベル1でス
タックを去ると、スタックに残るオブジェクトはそれぞ
れ低いレベルに下げられる。オブジェクトはすべて全く
同じに−単にスタック上のオブジェクトとして−処理さ
れる。 スタック上のオブジェクトを複製し、削除し、並べ替
えるようなコマンドがある。これらコマンドの幾つかは
キーボード上に見られる(DROP,SWAP,ROLLおよびCLEA
R)。その他はSTACKメニューに入っている。 コマンドのほとんどは、入力オブジェクト(引数と呼
ぶ)をスタックから取り、実行後出力オブジェクト(結
果と呼ぶ)をスタックに戻すものである。引数はコマン
ドが実行される前にスタック上に存在しなければならな
い。コマンドはその引数を取り除き、これをその結果と
置き換える。たとえば、関数SINを数値(実数または複
素数、または代数的数)をレベル1から取り、その正弦
を計算し、結果をレベル1に戻す。関数+は二つの数値
をスタックから取り、その和をスタックに戻す。 この種のロジックは、コマンドが引数の後に来るもの
であって、ポストフィクス・ロジックあるいはRPN(逆
ポーランド表記法)と呼ばれる。 アナンシェータ 表示の最上部(行106)に現われるアンナシェータは
角モード、エントリ・モード、およびその他の状態情報
を示す。 アンナシェータ例一覧オブジェクトのエントリ キーを押して新しいオブジェクトを入れ始めると、キ
ー上の文字がコマンド行に入る。コマンド行にはテキス
トの形で表わされた任意の数のオブジェクトを入れるこ
とができる。これは表示の最下部(メニュー・ラベル
(もし存在すれば)の直上)に現われる。コマンド行は
EDITまたはVISITを使用して現存するオブジェクトの内
容を見たり変更したりするときにも現われる。 コマンド行の内容はENTER(または自動的にENTERを行
うコマンドキーまたはファンクションキー)を押すと処
理される。コマンド行の内容はプログラムとして評価さ
れ、該コマンド行が表示から消える。 文字は常識的な範囲でいくつでもコマンド行に入れる
ことができる。行は、NEWLINEを押すことにより数行に
分けることができる。NEWLINEが押されると、「newlin
e」キャラクタ(ラインフィード)がその時点における
カーソル位置でコマンド行のストリングに挿入される。
改行の文字はオブジェクト・セパレータとして働くが、
その他の場合はコマンド行を評価するとき無視される。 コマンド行に23字を超える文字を入れると、文字は表
示装置を左にスクロールする。省略記号(…)が最も左
の文字の位置に現われて表示されない文字があることを
示す。カーソルを表示の左端を超えて動かそうとする場
合、最左端の文字が表示内にスクロール・バック、文字
が右側にスクロールされる。次に省略記号が表示の右端
に現われる。コマンド行が複数行のテキストから成ると
きは、すべての行が左右に一緒にスクロールされる。 第2図は計算装置100の内部のチップ・レベルの構造
を示す。中央処理装置201、2個の読出し専用メモリ203
と204、ディスプレイ・ドライバ(以下、表示ドライ
バ)とランダム・アクセス・メモリ(RAM)との複合体
(combination)2個205と206がメイン・バス204に結合
して示されている。各表示ドライバは液晶表示装置103
の4行のうち、(207および208)のそれぞれ二行分の制
御を行う。キーボード202は中央処理装置201と結合して
いるように示されている。キーボード202は第1図のキ
ー101と102との二つの部分を備えることができるが、接
触感知スクリーンのような別の形態のデータの入れ方に
することもできる。本発明によるこのシステムおよびそ
の構成要素の特殊な組織および利用法はこの説明が進む
につれて明らかになる。 第3図は本装置のユーザ・インタフェースをサポート
するため読出し専用メモリ203および204に入っているオ
ペレーティング・システムによるランダム・アクセス・
メモリ205および206の使い方のマップである。本明細書
および参照した特許出願明細書に使用しているオブジェ
クト(対象)という語は、上述したようにオペレーティ
ング・システムでサポートされる数学データおよび式、
プログラムなどを含む複数のデータ形式を表わしてい
る。オブジェクトは読出し専用メモリ203および204に存
在することができるし、ランダム・アクセス・メモリの
一時的オブジェクト領域302、あるいはユーザ変数領域3
10に存在することができる。第1図の101の部分はオブ
ジェクト形式、その記号、およびオブジェクト形式の例
を掲げてある。 予約システム・メモリ(reserved system memory)領
域301は、他のメモリ領域302〜310を識別するメモリ・
アドレスと、他の永久的に割当てられているシステム・
データを備えている。 一時的オブジェクト領域(temporary object area)3
02は本計算機の使用中に作り出された無名のオブジェク
トを含んでいる。 リターン・スタック303は未完了の計算機動作を表わ
すオブジェクト・シーケンスを指すポインタを構成する
アドレスの後入れ先出しスタックである。このスタック
はメモリの終り(高位アドレス)に向って大きくなって
行く。 未使用メモリ304は現在使用していないメモリ領域で
ある。 データ・ポインタ・スタック305はオブジェクトを指
すポインタを構成するアドレスの後入れ先出しスタック
である。本発明のユーザ・インターフェースは、ポイン
タそれ自身ではなく、スタック・ポインタによって指示
されたオブジェクトを人間が読み得る形で表示する。デ
ータ・ポインタ・スタック305はメモリの始まり(低位
アドレス)の方向に向って未使用メモリ内に成長してい
く。 コマンド行領域306はユーザが入れたコマンドおよび
データをテキスト文字の形で蓄積するのに使用される動
的に割当てられたユーザ・メモリである。 一時環境領域307は主として中間結果およびパラメー
タ渡しのメモリとして使用される動的に割当てられるオ
ブジェクトのリンクト・リストである。 ループインデクス領域308はプログラム構成をループ
する開始/停止インデクスを保存するのに使用される。 キー・マップ領域309はキーボードの各キーに現在対
応付けられている機能を定義する。 ユーザ変数領域310はユーザにより明示的に作り出さ
れた名前付きオブジェクト(変数)を含んでいる。 メモリへのアクセスとその機能、およびそのときの表
示装置上の表示を、第2図のシステムに特有の機能とと
もに、以下の式LN(2.3×1.0)の入力、処理、および評
価を実際にたどりながら説明する。 1. 〔ON〕と書かれたキー111を押す。表示装置は第3a
図に示すように見える。表示装置上の4行は画面の左に
上から下へ降順に番号が付けてある。これは即時入力モ
ードである。 2.〔′〕と書かれたキー112を押す。この区切り記号は
オブジェクト(名前および代数(algebraics))を符号
で表わすものである。表示装置は第3b図で示すように見
える。即時入力モード(第3a図に見えるような)では、
これによって代数入力モードが開始される、すなわち起
動される。代数カーソル14は表示画面の左下隅(行1)
に区切り記号の傍にある。このモードでは、代数式の実
行に許容されていないファンクションに対応するキーを
押すと、そのキーに対応するファンクションが実行され
る。代数関数キーを押すと、該関数名がコマンド行に加
えられる。関数(LN)がその引数を、LN(2.3+1.0)の
ように、括弧内に取り込む場合には、開き括弧(も加え
られる。行1から4までが上にシフトされ、行1,2およ
び3が残って見える。 3. シフトキー107とシフトされたLOGSキー113とを押
す。表示装置は第3c図に示すように見える。個々のメニ
ュー・ラベル15は行1に表示される。代数カーソル14は
行2に上げられ、行1から4までが上にシフトされ、番
号1および番号2の付いた行が残って見える。 4. LNを押す。これはメニュー表示装置のラベルLNの直
下のメニュー・キー104である。表示装置は第3d図に示
すように見える。右側に大括弧または括弧の付いた関数
LNが行2に加えられ、代数カーソル14はその右に移る。 5. 今度は対応する文字の付されたキーを順に押すこと
により式2.3+1.0を加える。これらステップに対応する
表示を第3e,3fおよび3g図に示す。ここではニュー・ラ
ベルは不変である。 6. 次にシフトキー107とシフトされたキー116を押す。
これにより式の終りに括弧が加わり(第3h図)、数量
(2.3+1.0)が完成する。 7. 今度はENTERキー105を押す。これにより式が、第3i
図に見えるように、表示の右側に移り、式が表示スタッ
クの最下部に入る。カーソル14は消える。 第4,5,6,7aおよび7b図は本発明のユーザ・インターフ
ェースの論理的実行を示す流れ図である。第4図に示す
「外側(outer)ループ」はユーザ対話に最外側レベル
を構成する無端ループである。この図に使用している用
語は次のとおりである。 1. 外側ループの始め(Top of Outer Loop)(401)
は、ループの論理的開始である。 2. メモリが小さいか?(402)は、利用可能な未使用
メモリ304が非常に小さくて計算機の通常動作が困難に
なっている状態か否かを意味する。メモリ過小警告(lo
w memory warning)401aが表示される。 3. スタックの表示(403)(メモリ領域305)は、デー
タ・スタック・メモリのデータ・スタック・オブジェク
トから、ユーザが読取り可能な文字を供給する。これは
表示装置103の右側に入れられる。このステップの論理
を第5図に展開してある。スタックの別の機能403aは表
示を開始する。 4. ENTER?(404)におけるENTER機能とは、コマンド行
306の内容の解釈(parsing)および実行の動作を言い、
これは即時実行キー、特にENTERキー105を押すことによ
り開始することができる。 5. TRACE?(405)におけるTRACE機能とは、ユーザ制御
の計算機モードを言う。トレース・モードが働いている
ときは、ユーザ入力および計算機結果のすべてが赤外線
発光ダイオード110により印刷装置に伝えられる。 6. 実行のための異なるメニューを選択するには、必要
ならば、ユーザのビュー(viewing)および対話に関し
て新しいメニュー表示が必要になる。判断406でメニュ
ー変更されるべきものと判断されると、メニュー・ラベ
ルを更新し、407において新しいメニュー・ラベル表示
を開始する。コマンド行が変ると、新しい行が表示され
る。判定機能408は再表示機能409を始める。 7. エラー?(410)におけるエラー判定機能は、計算
機動作が通常に終了するのを中断させる数学的または論
理的な計算機エラーを言う。これは表示エラー機能411
を始動させる。 8. 412におけるビジー(busy)アンナシエータ機能
は、行106のそのアナンシエータの表示に関連する。こ
のアナンシエータは計算機が使用中であること、すなわ
ち新しいキーストロークを処理する態勢にないことを示
す。この機能は自動的にオフになる。 9. 413におけるコマンド・スタック機能は、コマンド
・スタック・ポインタを更新するが、後に再使用するた
め保存してある最も最近入った四つのコマンド行のスタ
ックである。これらはメモリ領域306の中のエントリで
ある。 10. キー・プロセス・ステップ(414)では、キーが押
されるのを待ち、処理する。これは第6図に詳細に示し
てある。外側ループは、この段階で新しいキーボード入
力を待ちながら無限に待つことができる。 第5図はスタック表示動作403のロジックを示す。表
示装置103は4行の文字データを表示することができ
る。優先度の降順に対応して普通の表示には、最下表示
行から始まって、次のものが含まれる。 1. 黒地に白文字で示すメニュー・ラベルを含む0行ま
たは1行。 2. 現行コマンド行エントリの0行から4行。 3. 最大4行のスタック・オブジェクト。 第5図に引用した「ウインド」(window:窓)(501,5
02)は、メニュー・レベル行あるいはコマンド行の表示
の有無で決まる。スタック・オブジェクト表示に利用で
きる表示の部分(1行から4行まで)を示す。(503)
のスタック行の数はウインドの中で利用できる行の数で
ある。 利用できるスタック行の数が0以下である場合には表
示は落とされる(表示されない)。 1行以上が利用できる場合には、次のオブジェクト
が、もしそれが可能であれば表示のためにアクセスされ
る。 判定機能504で参照されている、第1図のシフトキー
を動作させて開始されるエディットおよびビジットの動
作は、オブジェクトをスタックからコマンド行にコピー
させるので、その内容をユーザがエディットすることが
できる。エディットされたオブジェクトがコマンド行と
スタック表示とで同時に見得る場合には、オブジェクト
のスタック表示は逆ビデオ(黒地に白の機能)505で示
される。 機能506はユーザが制御する多数行(マルチ・ライ
ン)表示モードを検知する。多数行表示モードが働いて
いる場合、最初のスタック・オブジェクトが必要なら一
つ以上の表示行に示される(機能507,501,508,509)。
そうでない場合には、1行の形に示される。他のすべて
のスタック・オブジェクトは1行に示される。 リターン機能510は、表示をスタックに返す第4図の
ステップ403に戻ることである。 第6図はキー・プロセス(処理)・ステップ414の論
理的流れを示す。GET・KEYステップ601は処理の流れが
実行キーの押されたことが本装置で検出されるまで停止
している待ち状態である。これはオブジェクトをコマン
ド行に入れることができる代数モードである。この状態
もシステム・タイマまたは〔ON〕キー111により生ずる
本装置の割込みによって中断することができる(60
2)。中断があればシステムに、もしあれば、コマンド
行カーソルを点滅させ、システム・クロックを更新させ
る。 動作している多機能キーがカーソル運動キーである場
合には、多機能キーを押したことは機能603で検出さ
れ、カーソル運動が機能604により実行される。 アルファ・モードがアルファ・モード機能(605)で
決定されるとおり働いていれば、現行キーのアルファ・
モード定義が実行アルファ・キー機能によって実行され
る。大部分のキーについて、このことは丁度キーの名前
をメモリ内および表示装置上の現行コマンド行に加える
ことを意味する。 代数入力モードが働いており(判定機能(607))、
現行キーが文字キーであるかあるいは、機能608で決め
たように、代数式構文上適式である場合には、現行キー
のアルファ・モードにおける定義が実行アルファ・キー
機能606によって実行される。 アルファ・モードも代数入力モードも働いていない場
合には、計算機は中間入力・実行モード(ステップ60
9)になっている。現行キーの定義がENTERの自動実行を
含んでいる場合にはENTERシーケンス610(第7A図および
第7B図を参照)が実行される。最後に、キーの即時入力
の定義が機能(611)で実行される。 リターン612は外部ループに戻ることである。 第7A図および第7B図はENTER動作ステップ610を論理的
に実施する場合の流れ図である。ENTERプロセスの始め
に、第1図には示していないが定義で引用したアナンシ
エータ行の使用中アンナシエータ701をオンにする。こ
れは結果として得られるすべての処理が完了し計算機が
別のユーザ入力を受入れる態勢が整ってから使用中アナ
ンシエータ412を作動させることによってのみクリアさ
れる。 UNDO使用可能機能701は計算機が、エラー回復の目的
で、スタック機能703の保存コピーの処理を更に開始す
る前に、データ・スタックのコピーを保存することを意
味する。 ステップ704は、スタック最上部の表示カウンタがス
タック観察機能によって変えられている場合に、これを
リセットする。 ステップ705で、現行キーを押したことに対応する機
能の名前がTRACEモードの印刷の目的で得られる。コマ
ンド行が空いていれば、判定機能706で、TRACE判定機能
707が始まる。TRACEモードが使用可能になれば、ファン
クション名が印刷される。ファンクション名印刷ステッ
プ708はファンクション名を第1図の赤外線発光ダイオ
ード110を介して伝達させる。 コマンド行が空いていなければ、コマンド行全体が解
釈される。すなわち、コマンド行解釈機能709で構文が
正しいかチェックされる。解釈エラー判断機能710で構
文エラーが検出されれば、コマンド行が、カーソルをそ
の行のエラーの位置に置いた状態で、回復され、構文エ
ラー・メッセージがこの機能711で表示され、制御が外
部ループ401のはじめまで戻る。 コマンド・スタックが判定機能712で使用可能である
と判定されれば、コマンド行のテキストが可能性のある
再使用のため機能713により4レベルのコマンド・スタ
ックに保存される。 第7B図の判定機能714で、TRACEが使用可能になれば、
機能715がコマンド行の内容と現行キーのファンクショ
ン名とを印刷のため赤外線発光ダイオード110によって
伝えさせる。 現行のENTERが最上部のスタック・オブジェクトのエ
ディットを終結していれば(判定機能716)、機能717が
そのオブジェクトをスタックから下ろしはじめる。次
に、EDIT ENDEDの決定718が行われる。 解釈(parsed)コマンド行評価機能719で、コマンド
行エントリと現行キーの定義とで表わされるプログラム
が実行される。これはユーザが見得る主なステップであ
って、コマンド行を用い終結キーを押すことによって計
算機を与えられるインストラクションの実行を示してい
る。 コマンド行の実行が完了すると、現行のENTERがスタ
ック・オブジェクトあるいは変数のエディット(VISI
T)を終結した場合、新しい最上部のスタック・オブジ
ェクトを使用して元のオブジェクトを置き換える(72
1)。 リターン722は第6図からわかるようにプロセス・キ
ーあるいは実行キーの動作611に戻ることである。 産業上の適用可能性 本発明は一般に物理的、経済的、あるいはその他の関
係を規定する式の処理を含むデータ処理操作に適用でき
る。 〔効 果〕 本発明は、上記のように構成され、作用するものであ
るから、極めて効率のよいユーザ・インターフェースを
提供することができ、とりわけ逆ポーランド入力方式と
直接数式入力方式との両者の長所をあわせ持つユーザイ
ンタフェースを提供しうるという効果が得られる。
【図面の簡単な説明】 第1図は実施例に係る計算装置のキーボード及び表示装
置を示す図、第2図は第1図に示す計算装置内部のチッ
プレベルの構成を示す図、第3図は第1図の計算装置の
ランダム・アクセス・メモリの構成を示す図、第3A図乃
至第3I図は入力、操作、評価において表示装置がどのよ
うにユーザに対するディスプレイを行うかを順を追って
示した図、第4図は本発明のユーザ・インタフェースの
論理的実行を示す流れ図、第5図、第6図、第7A図、第
7B図は第4図の要部をさらに詳細に示した流れ図であ
る。 203,204,205,206:記憶手段、 ユーザ・インタフェース:101,102、
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロバート・エム・ミラー アメリカ合衆国オレゴン州コーバリス ミンク・プレイス ノース・ウエスト 3555 (72)発明者 チャールズ・エム・パトン アメリカ合衆国オレゴン州ユージーン ファー・エイカーズ・ドライブ1120 (72)発明者 ウイリアム・シー・ウイクス アメリカ合衆国オレゴン州コーバリス クイーンズ・アベニュー ノース・ウエ スト 4517 (56)参考文献 特開 昭60−217428(JP,A) 特開 昭62−288942(JP,A) 特公 昭53−32218(JP,B1) 「インターフェース」Vol.7,N o.8(No.51)CQ出版,P.118 −139 「Byte」Vol.11,No.8 (1986−8)p.227−233

Claims (1)

  1. (57)【特許請求の範囲】 1.ラストイン・ファーストアウト型スタック記憶手段
    と、該スタック記憶手段の少なくとも1段のスタックの
    内容を段毎に表示する表示装置と、数字キーおよび関数
    キーを含む複数のキーを備えた入力装置とを具備し、前
    記スタックの最上部の1段又は2段のオブジェクトに関
    して演算を行い該演算結果を最上段に戻す逆ポーランド
    式卓上型電子計算機において、 前記スタック記憶手段の各段が記憶するオブジェクト
    は、10進数の実数のデータ、および、2進数、複素数、
    文字列、数列、ベクトル、行列、変数などオブジェクト
    形式を示す識別子とそのオブジェクト形式に特有の構文
    規則に従った表記に対応するデータであり、前記入力装
    置は、オブジェクト識別子と当該オブジェクト形式の構
    文規則に従ったデータを入力するためのキーを具備し、
    前記表示装置は、当該オブジェクトの形式を示す識別子
    と構文規則に従ったデータを表示するものであることを
    特徴とする電子計算機。 2.代数式のオブジェクトを入力する場合、前記入力装
    置は、該オブジェクトが代数式であることを識別子の入
    力キーが操作されると、キーの操作の順序にしたがって
    代数式が入力される状態となり、前記表示装置は、当該
    代数式を1段のスタックの内容である1個のオブジェク
    トとして、代数式の形で表示することを特徴とする特許
    請求の範囲第1項に記載の電子計算機。 3.代数式のオブジェクトに対して演算を実行した場
    合、当該演算の内容を表す代数式の形式で表現された新
    しいオブジェクトが演算結果として前記スタックに戻さ
    れ、前記表示装置により表示されることを特徴とする特
    許請求の範囲第1項又は第2項に記載の電子計算機。 4.前記入力装置は、代数式オブジェクト自身の代数式
    を評価して当該評価の結果を前記スタックに戻すキーを
    具備し、数値等の評価結果が前記表示装置により表示さ
    れることを特徴とする特許請求の範囲第1項又は第2項
    又は第3項に記載の電子計算機。
JP62271612A 1986-10-27 1987-10-27 計算装置 Expired - Lifetime JP2662225B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/923,933 US4885714A (en) 1986-10-27 1986-10-27 Calculator having a user-accessible object stack for the uniform application of mathematical functions and logical operations to a multiplicity of object types
US923,933 1986-10-27

Publications (2)

Publication Number Publication Date
JPS63118841A JPS63118841A (ja) 1988-05-23
JP2662225B2 true JP2662225B2 (ja) 1997-10-08

Family

ID=25449491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62271612A Expired - Lifetime JP2662225B2 (ja) 1986-10-27 1987-10-27 計算装置

Country Status (5)

Country Link
US (1) US4885714A (ja)
EP (1) EP0266144B1 (ja)
JP (1) JP2662225B2 (ja)
DE (1) DE3789934T2 (ja)
HK (1) HK23795A (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5189633A (en) * 1990-01-12 1993-02-23 Bonadio Allan R Apparatus and method for interactively manipulating mathematical equations
US5291593A (en) * 1990-10-24 1994-03-01 International Business Machines Corp. System for persistent and delayed allocation object reference in an object oriented environment
JP2815261B2 (ja) * 1992-01-29 1998-10-27 シャープ株式会社 複素数計算機能付き電子機器
US5630126A (en) * 1994-12-13 1997-05-13 International Business Machines Corp. Systems and methods for integrating computations into compound documents
US7158188B1 (en) 1996-04-19 2007-01-02 Hitachi, Ltd. Broadcasting and communication receiver apparatus
JP3601181B2 (ja) * 1996-04-19 2004-12-15 株式会社日立製作所 受信装置
JPH10289211A (ja) * 1997-04-14 1998-10-27 Sharp Corp 小型電子機器
US6304853B1 (en) 1998-09-21 2001-10-16 Peter J. Malnekoff Automated gemstone evaluation system
US6973560B1 (en) * 1999-07-16 2005-12-06 Lamarck, Inc. Fault tolerant and combinatorial software environment system, method and medium
EP1096410A1 (en) * 1999-10-25 2001-05-02 Peter J. Malnekoff An automated gemstone evaluation system
US7035885B2 (en) * 2000-03-09 2006-04-25 Kulak John A Machinist calculating apparatus
US6748404B1 (en) * 2000-08-22 2004-06-08 Kinpo Electronics, Inc. Data editable statistic calculator, and the related data editing method
US8499014B2 (en) * 2005-06-01 2013-07-30 Texas Instruments Incorporated Functionality disable and re-enable for programmable calculators
JP2007328692A (ja) * 2006-06-09 2007-12-20 Canon Inc 代数演算方法及びその装置、プログラム
EP1988453A1 (en) * 2007-03-30 2008-11-05 Casio Computer Co., Ltd. Function calculator having help display function
JP5900060B2 (ja) * 2012-03-19 2016-04-06 カシオ計算機株式会社 計算機及び計算プログラム
JP6911361B2 (ja) * 2017-01-19 2021-07-28 カシオ計算機株式会社 計算機、計算方法及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3889243A (en) * 1973-10-18 1975-06-10 Ibm Stack mechanism for a data processor
US4348733A (en) * 1976-07-26 1982-09-07 Texas Instruments Incorporated Calculator with algebraic operating system
JPS5332218U (ja) * 1976-08-25 1978-03-20
US4456964A (en) * 1979-06-25 1984-06-26 Hewlett-Packard Company Calculator including means for displaying alphanumeric prompting messages to the operator
US4587632A (en) * 1980-05-27 1986-05-06 At&T Bell Laboratories Lookahead stack oriented computer

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
「Byte」Vol.11,No.8(1986−8)p.227−233
「インターフェース」Vol.7,No.8(No.51)CQ出版,P.118−139

Also Published As

Publication number Publication date
JPS63118841A (ja) 1988-05-23
EP0266144A2 (en) 1988-05-04
EP0266144B1 (en) 1994-06-01
HK23795A (en) 1995-03-03
DE3789934T2 (de) 1994-12-15
EP0266144A3 (en) 1990-05-02
US4885714A (en) 1989-12-05
DE3789934D1 (de) 1994-07-07

Similar Documents

Publication Publication Date Title
JP2662225B2 (ja) 計算装置
JP2716135B2 (ja) 計算装置
US4791556A (en) Method for operating a computer which searches for operational symbols and executes functions corresponding to the operational symbols in response to user inputted signal
US5621903A (en) Method and apparatus for deducing user intent and providing computer implemented services
US4912640A (en) Electronic type memo device
EP0361869B1 (en) Information display apparatus and method of scrolling displayed data
EP0266145B1 (en) Electronic data processing apparatus for improved algebraic expression manipulation
JP2625121B2 (ja) 計算装置の表示方法
JPH0335355A (ja) 電子機器
EP0364099B1 (en) Data storage and retrieval in a calculator
GUIDE inter
JPH01158556A (ja) 卓上電子計算機の演算モード設定装置
JP2001160048A (ja) 文書作成装置における文字属性設定装置及び方法
JPH02297658A (ja) 文書処理装置
JPS6227420B2 (ja)
Tidball et al. Educational Time-Sharing on a Minicomputer.
JPH05204901A (ja) 文書処理装置のレイアウト表示制御装置
JPS60195485A (ja) 電子時計のデ−タ入力手段
JPH03134755A (ja) メッセージ管理実行装置
JPS62174819A (ja) 数値入力方式
JPH0776953B2 (ja) データ処理装置
JPH0836614A (ja) 表処理装置
JPH0635906A (ja) 表計算処理装置
JPS60225926A (ja) 表示部付きキ−入力装置
JPH0640326B2 (ja) 電子式漢字辞書

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080613

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080613

Year of fee payment: 11