JP2700960B2 - 電子式卓上計算機 - Google Patents

電子式卓上計算機

Info

Publication number
JP2700960B2
JP2700960B2 JP6696491A JP6696491A JP2700960B2 JP 2700960 B2 JP2700960 B2 JP 2700960B2 JP 6696491 A JP6696491 A JP 6696491A JP 6696491 A JP6696491 A JP 6696491A JP 2700960 B2 JP2700960 B2 JP 2700960B2
Authority
JP
Japan
Prior art keywords
function
buffer
data
key
code
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 - Fee Related
Application number
JP6696491A
Other languages
English (en)
Other versions
JPH04302349A (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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP6696491A priority Critical patent/JP2700960B2/ja
Publication of JPH04302349A publication Critical patent/JPH04302349A/ja
Application granted granted Critical
Publication of JP2700960B2 publication Critical patent/JP2700960B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Calculators And Similar Devices (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、電子式卓上計算機に
関し、より特定的には、種々の関数計算が可能な電子式
卓上計算機(以下、関数電卓と称す)に関する。
【0002】
【従来の技術】いわゆる関数電卓は、四則演算のみなら
ず、その他の種々の関数演算(三角関数の演算,対数演
算,指数関数の演算等)が可能である。ところで、各関
数は優先順位が定められており、関数電卓はキー入力さ
れた関数データをその優先順位に従って演算する。たと
えば、「3+5×6」とキー入力された場合、関数
「×」は関数「+」よりも優先順位が高いので、関数電
卓はまず「5×6=30」を演算し、その後、「3+3
0=33」の演算を行なう。したがって、キー入力され
た関数データは、必ずしもキー入力順に演算が実行され
るとは限らず、後でキー入力された関数データが先にキ
ー入力された関数データよりも先に演算される場合もあ
る。
【0003】そのため、関数電卓においては、キー入力
された関数データが実行されるまでの間、一時的にその
関数データを記憶保持しておくためのファンクションバ
ッファが設けられている。通常、このファンクションバ
ッファは複数のエリアを有し、各エリアに演算子1個分
の関数データが格納される。
【0004】
【発明が解決しようとする課題】上記のごとく、従来の
関数電卓では、ファンクションバッファの各エリアに演
算子1個分の関数データを格納しているため、関数の数
が多い数式データがキー入力された場合、ファンクショ
ンバッファのエリアが足りなくなり、1つの数式を続け
て実行できないという問題点があった。特に、演算子の
直後に「(」のデータが来る計算、たとえばsin(2
5+6…)が制限を受けている。
【0005】それゆえに、この発明の目的は、ファンク
ションバッファの限られたエリアを有効に活用でき、よ
り長い数式データの実行を可能とする電子式卓上計算機
を提供することである。
【0006】
【課題を解決するための手段】この発明に係る電子式卓
上計算機は、バッファ手段と、判断手段と、記憶制御手
段とを備えている。バッファ手段は、キー入力された関
数データをそれが実行されるまでの間一時的に記憶保持
しておく。判断手段は、予め定められた所定のデータが
キー入力されたとき、バッファ手段に最新に記憶された
関数データが単独の演算子のコードであるか否かを判断
する。記憶制御手段は、バッファ手段に最新に記憶保持
された関数データが単独の演算子のコードであることを
判断手段が判断したことに応答して、キー入力された所
定のデータを当該最新に記憶された関数データと同じエ
リアに複合の演算子のコードとして記憶させる。
【0007】
【作用】この発明においては、予め定められた所定の関
数データがキー入力されたとき、バッファ手段に最新に
記憶された関数データが単独の演算子のコードである場
合は、そのときキー入力された所定のデータをバッファ
手段に最新に記憶された関数データと同じエリアに複合
の演算子のコードとして記憶させることにより、バッフ
ァ手段の1つのエリアに2種類のデータを記憶させるよ
うにしている。これによって、バッファ手段の使用エリ
アを節約することができ、より長い数式データを演算す
ることが可能となる。
【0008】
【実施例】図1は、この発明の一実施例に係る関数電卓
の外観図である。図において、関数電卓1の表面には、
表示器2と、キーボード3とが設けられている。表示器
2は、関数電卓1の動作モードを表示するための動作モ
ード表示部21と、複数桁の7セグメント表示器により
構成された数値表示部22と、3桁のドットマトリクス
表示器により構成された関数表示部23とを含む。一
方、キーボード3は、複数種類のファンクションキーが
配列されたファンクションキー部31と、複数の数値キ
ーが配列されたテンキー部32とを含む。ファンクショ
ンキー部31は、この発明に興味あるものとし
て、「(」キー31aと、「)」31bとを含む。これ
ら「(」キー31a,「)」キー31bは、数式データ
を部分的に区切るために用いられる。キーボード3は、
さらに、数値表示部22および関数表示部23における
カーソルの表示位置をシフトさせるための左シフトキー
33および右シフトキー34と、電源をオフさせるため
のオフキー35と、電源をオンさせるためのオンキー3
6とを含む。
【0009】図2は、図1に示す関数電卓1の構成を示
す概略ブロック図である。図において、CPU11に
は、ROM12とRAM13とが接続されている。RO
M12には、CPU11の動作制御のためのプログラム
や定数が格納されている。CPU11は、このROM1
2に格納された動作プログラムに従って動作を行なう。
RAM13は、CPU11の処理に必要な種々のデータ
を記憶する。さらに、CPU11には、キーボード3と
表示駆動回路14とが接続されている。キーボード3か
らCPU11には、操作されたキーに対応するキーコー
ドが与えられる。表示駆動回路14は、CPU11から
与えられる制御データに基づいて、表示器2の表示駆動
制御を行なう。
【0010】なお、RAM13には、図5に示すような
ファンクションバッファFB,ファンクションバッファ
カウンタFBC,実行バッファFBJが設けられてい
る。ファンクションバッファFBは、たとえば8つのエ
リアを有し、各エリアにキー入力された数式データに含
まれる演算子のコードが格納される。ファンクションバ
ッファカウンタFBCは、ファンクションバッファFB
のエリアを指定するためのポインタとして用いられる。
実行バッファFBJは、ファンクションバッファFBか
ら読出された演算子コードを一時的に記憶保持するため
のバッファである。実行バッファFBJに記憶された演
算子コードが次の演算の対象となる。
【0011】図3は、図1に示す関数電卓において、
「(」キー31aが押圧された場合のCPU11の動作
を示すフローチャートである。図4は、図1に示す関数
電卓において、「)」キー31bが押圧された場合のC
PU11の動作を示すフローチャートである。図5およ
び図6は、RAM13に設けられたファンクションバッ
ファ,ファンクションバッファカウンタ,実行バッファ
の格納データの一例を示す図である。以下、図3〜図6
を参照して、図1および図2に示す実施例の動作を説明
する。
【0012】まず、図3を参照して、「(」キー31a
が押圧された場合の動作を説明する。「(」キー31a
が押圧されると、まずステップS1において、ファンク
ションバッファカウンタFBCが指定するファンクショ
ンバッファFBのエリアに単独コードが格納されている
か否かを判断する。ここで、単独コードとは、1個分の
演算子を示すコードを意味する。これに対し、複合コー
ドというときは、1個分の演算子とそれに続く「(」の
記号とが複合されたコードを意味する。ステップS1に
おいて、ファンクションバッファカウンタFBCが指定
するファンクションバッファFBのエリアに単独コード
が格納されている場合は、ステップS2に進む。ステッ
プS2では、ファンクションバッファカウンタFBCが
指定するファンクションバッファFBのエリアの内容
が、複合コードに書換えられる。たとえば、ファンクシ
ョンバッファFBの指定されたエリアに演算子「×」の
単独コードが記憶されていた場合、そのエリアの内容
は、「×(」を示す複合コードに書換えられる。その
後、処理を終了する。一方、ステップS1において、フ
ァンクションバッファカウンタFBCが指定するファン
クションバッファFBのエリアに複合コードが格納され
ている場合は、ステップS3に進み、ファンクションバ
ッファカウンタFBCが1だけインクリメントされる。
続いて、ステップS4に進み、「(」を示す単独コード
がファンクションバッファカウンタFBCの指定するフ
ァンクションバッファFBのエリアに記憶される。その
後、動作を終了する。
【0013】たとえば、キーボード3から“sin(2
0+30×(”とキー入力された場合、ファンクション
バッファFBの内容は図5に示すようになる。すなわ
ち、ファンクションバッファFBの第1エリアには「s
in(」を示す複合コードが格納され、第2のエリアに
は「+」を示す単独コードが格納され、第3エリアには
「×(」を示す単独コードが格納される。これに対し、
従来の関数電卓で同様のキー操作がなされた場合、ファ
ンクションバッファFBの内容は、図7に示すようにな
る。すなわち、ファンクションバッファFBの第1のエ
リアから第5エリアに、それぞれ「sin」,「(」,
「+」,「×」,「(」を示す単独コードが格納され
る。したがって、従来の関数電卓ではファンクションバ
ッファFBにおける5つのエリアが必要であったのに対
し、本実施例の関数電卓では図5に示すように3つのエ
リアで済み、2つのエリアを節約できたことになる。
【0014】次に、図4を参照して、「)」キー31b
が押圧された場合の動作を説明する。「)」キー31b
が押圧されると、まずステップS11において、ファン
クションバッファバッファカウンタFBCが指定するフ
ァンクションバッファFBのエリアに複合コードが記憶
されているか否かが判断される。もし、複合コードが記
憶されていない場合、すなわち単独コードが記憶されて
いる場合は、ステップS12に進み、ファンクションバ
ッファカウンタFBCが指定するファンクションバッフ
ァFBのエリアから記憶データが読出され、実行バッフ
ァFBJに格納される。ステップS12の処理の結果、
ファンクションバッファカウンタFBCが指定するファ
ンクションバッファFBのエリアは空エリアとなる。そ
のため、続いて、ステップS13に進み、ファンクショ
ンバッファカウンタFBCの内容から1が差引かれる。
これによって、常にファンクションバッファカウンタF
BCは、ファンクションバッファFBに格納された関数
データのうち最も新しく格納された関数データのエリア
を指定することになる。続いて、ステップS14に進
み、実行バッファFBJに記憶されたデータが、「(」
を示す単独コードであるか否かが判断される。実行バッ
ファFBJに記憶されたデータが「(」の単独コードで
ない場合は、ステップS15に進み、実行バッファFB
Jに記憶されたデータ、すなわち関数データが演算され
る。その後、ステップS11の動作に戻る。
【0015】上記ステップS11〜S15の一連の動作
は、ファンクションバッファFBから「(」のデータが
読出されるまで繰り返し実行される。その後、ファンク
ションバッファFBから「(」のデータが読出された場
合、そのデータは、複合コードの場合と単独コードの場
合とがあり得る。もし、単独コードの場合は、ステップ
S11からステップS12に進み、ファンクションバッ
ファFBから「(」の単独コードが読出されて実行バッ
ファFBJに格納される。続いて、ステップS13でフ
ァンクションバッファカウンタFBCの内容から1が差
引かれ、ステップS14に進む。ステップS14では、
実行バッファFBJの記憶データが「(」の単独コード
であると判断される。この場合、実行バッファFBJの
記憶データは演算子ではないので、何も演算は行なわれ
ず、そのまま処理を終了する。ステップS14で実行バ
ッファFBJの記憶データが「(」の単独コードである
と判断されるような状況は、「(」キー31aが数式デ
ータの最初に押圧された場合か、「(」キー31aが複
数回連続して押圧された場合に生じ得る。
【0016】一方、ファンクションバッファカウンタF
BCが指定するファンクションバッファFBのエリア
に、「(」を含む複合コードが記憶されている場合は、
ステップS11からステップS16に進む。ステップS
16では、その複合コードを解読して「(」データとと
もにどのような演算子が複合されているかを判断し、そ
の演算子を示す単独コードをファンクションバッファカ
ウンタが指定しているファンクションバッファFBのエ
リアに再格納する(図6参照)。これによって「(」と
「)」とによって区切られた部分の演算が終了し、図4
の動作を終了する。
【0017】図8は、本実施例において用いられる単独
コードと複合コードとの選択例を示している。図におい
て、単独コードおよび複合コードの各キーコードは、1
6進数で示されている。この図8の例では、単独コード
と複合コードとの違いは、各キーコードにおける上位桁
の4ビット目が「0」か「1」かで分けられている。す
なわち、単独コードのキーコードの上位桁はC=110
0であるから、4ビット目が「1」になっている。これ
に対し、複合コードのキーコードの上位桁は4=010
0であるから、4ビット目が「0」となっている。した
がって、CPU11は、図3におけるステップS1また
は図4におけるステップS11で、ファンクションバッ
ファFBに単独コードが記憶されているか複合コードが
記憶されているかを判断する場合、ファンクションバッ
ファFBに記憶されたキーコードの上位桁の4ビット目
が「1」の場合は単独コードであると判断し、「0」の
ときは複合記憶コードであると判断する。
【0018】
【発明の効果】以上のように、この発明によれば、予め
定められた所定の関数データがキー入力されたとき、そ
の関数データをバッファ手段に最新に記憶保持された単
独の演算子のコードと複合させて同じエリアに記憶させ
るようにしているので、バッファ手段の限られたエリア
を有効に活用することができ、従来の関数電卓では処理
できなかったような長い数式データの演算を行なうこと
ができる。
【図面の簡単な説明】
【図1】この発明の一実施例に係る関数電卓の外観図で
ある。
【図2】この発明の一実施例に係る関数電卓の構成を示
すブロック図である。
【図3】図1および図2に示す実施例において、「(」
キーが押圧された場合の動作を示すフローチャートであ
る。
【図4】図1および図2に示す実施例において、「)」
キーが押圧された場合の動作を示すフローチャートであ
る。
【図5】図1および図2に示す実施例において用いられ
るファンクションバッファとファンクションバッファカ
ウンタと実行バッファとに記憶されるデータの一例を示
す図である。
【図6】図1および図2に示す実施例において用いられ
るファンクションバッファとファンクションバッファカ
ウンタと実行バッファとに記憶されるデータの他の例を
示す図である。
【図7】従来の関数電卓において用いられるファンクシ
ョンバッファとファンクションバッファカウンタと実行
バッファとに記憶されるデータの一例を示す図である。
【図8】図1および図2に示す実施例において用いられ
る単独コードおよび複合コードの選択例を示す図であ
る。
【符号の説明】
1は関数電卓、2は表示器、3はキーボード、31aは
「(」キー、31bは「)」キー、11はCPU、12
はROM、13はRAMを示す。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 関数計算が可能な電子式卓上計算機であ
    って、キー入力された関数データをそれが実行されるま
    での間一時的に記憶保持しておくためのバッファ手段、
    予め定められた所定のデータがキー入力されたとき、前
    記バッファ手段に最新に記憶保持された関数データが単
    独の演算子のコードであるか否かを判断するための判断
    手段、前記バッファ手段に最新に記憶された関数データ
    が単独の演算子のコードであることを前記判断手段が判
    断したことに応答して、前記キー入力された所定のデー
    タを当該最新に記憶された関数データと同じエリアに複
    合の演算子のコードとして記憶させる手段を備える、電
    子式卓上計算機。
  2. 【請求項2】 前記予め定められた所定のデータは、数
    式の一部分を区切るためのカッコデータである、請求項
    1の電子式卓上計算機。
JP6696491A 1991-03-29 1991-03-29 電子式卓上計算機 Expired - Fee Related JP2700960B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6696491A JP2700960B2 (ja) 1991-03-29 1991-03-29 電子式卓上計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6696491A JP2700960B2 (ja) 1991-03-29 1991-03-29 電子式卓上計算機

Publications (2)

Publication Number Publication Date
JPH04302349A JPH04302349A (ja) 1992-10-26
JP2700960B2 true JP2700960B2 (ja) 1998-01-21

Family

ID=13331217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6696491A Expired - Fee Related JP2700960B2 (ja) 1991-03-29 1991-03-29 電子式卓上計算機

Country Status (1)

Country Link
JP (1) JP2700960B2 (ja)

Also Published As

Publication number Publication date
JPH04302349A (ja) 1992-10-26

Similar Documents

Publication Publication Date Title
US4580235A (en) Electronic calculator with check function
US4695983A (en) Calculator or pocket computer with selectable operational sequence
JP3140916B2 (ja) 数式入力装置
US5371694A (en) Scientific calculator
JP2700960B2 (ja) 電子式卓上計算機
US4475165A (en) Method of data entry and execution of a two variable calculator function in the same manner and entry format as a single variable function
US4473886A (en) Data processing apparatus with algebraic memory operation and entry sequence
CA1173164A (en) Fraction calculator
US5285399A (en) Calculator with easily enterable constant calculation mode
JPH06168104A (ja) 電子式計算機
JP2707162B2 (ja) データ処理装置
JP3498323B2 (ja) 電子式計算機及び演算処理方法
JP7349148B2 (ja) 電卓
US5253191A (en) Electronic computer capable of entering unary operator using prefix notation
JPH09231176A (ja) 電子計算機
JP2564742B2 (ja) 電子データ処理装置
JPH035956Y2 (ja)
JPH0561670B2 (ja)
JP4193773B2 (ja) 演算制御装置及びプログラム
US4779219A (en) Electronic apparatus having an improved calculation function
JPH0616278B2 (ja) 卓上電子計算機の演算モード設定装置
JP2744793B2 (ja) 電子機器
JPH11102346A (ja) 電子卓上計算機
JPS6225208B2 (ja)
JP2912499B2 (ja) 統計処理機能を有する電子機器

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970826

LAPS Cancellation because of no payment of annual fees