この記事には複数の問題があります。改善にご協力いただくか、トークページでこれらの問題について議論してください。(これらのメッセージを削除する方法とタイミングについてはこちらをご覧ください)
|

エレクトロニカMK-52(ロシア語:Электро́ника МК-52)は、ソビエト連邦で1983年から1992年にかけてウクライナのクエーサー工場とクヴァドル工場で製造されたRPN方式のプログラム可能な計算機である。 [ 1 ]ソビエト連邦のプログラム可能な計算機の第3世代に属する。当初の販売価格は115ルーブルであった。[ 2 ]
MK-52はElektronika MK-61の下位互換性を持つ改良型で、主な変更点は、永久データ保存用の内部不揮発性EEPROMモジュール、診断スロット、および別売りのROMモジュール用スロットの追加である。[ 3 ] MK-52およびMK-61計算機のマシンコードと機能は、以前のMK-54、[ 2 ] B3-34、およびB3-21 Elektronika計算機の拡張であった。MK-52は、EEPROMモジュールの形で内部ストレージを持つ唯一の計算機として知られている。多くのソビエト計算機と同様に、MK-52には文書化されていない機能が多数ある。[ 4 ]
1988年11月、MK-52はソユーズTM-7宇宙船に搭載され宇宙へ行き、搭載コンピューターのバックアップとして使用された。[ 1 ]
MK-52には、105個の揮発性プログラムメモリ、内部EEPROMモジュール(512バイトのメモリ)、および15個の7バイトレジスタが搭載されています。単3電池4本を使用するか、電源アダプタに接続できます。比較的暗い10桁のИЛЦ2-12/8Л緑色蛍光表示管を備えています。[ 5 ]これらの10桁は、8桁の仮数部と2桁の指数部に分割されます。MK-52には、さまざまなROMモジュールを接続できる拡張ポートがあります。システムクロック速度は約75kHz(К745ГФ3-2 4相クロックジェネレータチップ[ 5 ]に由来)で、重量は約400グラムです。
MK-52は、ソ連初の不揮発性メモリを搭載したマイクロ計算機である。このメモリは、4キロビットの容量を持ち、1万回の書き換えが可能なКР1601РР1 EEPROM [ 5 ]を搭載しており、電源オフ時でもプログラムとワーキングメモリのセキュリティを確保している。このメモリは、最大512個の1バイトプログラムワード(または72個の7バイトレジスタの内容)を保存し、計算機のRAMと内容を交換することができる。
この電卓は、第2世代モデル(B3-34およびMK-54)と完全な互換性があり、同じコマンドシステムとマシンコードを使用しています。平均すると、MK-52のプログラムメモリ105ステップと15個のレジスタをすべて使用するプログラムは、B3-34の約140~150ステップと18個のレジスタを使用するプログラムと同等の機能を持ちます。さらに、MK-52は、数値の整数部と小数部の割り当て、数値の絶対値と最大値の検索、特定の論理演算の実行など、拡張されたコマンドセットを備えています。
さらに、外部ROM(メモリ拡張ユニット)があり、メーカー製のゲームや数学プログラムが保存されており、ユーザーライブラリを構成しています。メーカーは4種類のROMカートリッジを製造しており、そのうち3種類には様々な数学関数が収録されており、BRP-4にはゲームプログラムが収録されています。
BRP-2 "アストロ" (ロシア語: БРП-2 "Астро") は、航行任務のための一連のプログラムを備えており、その情報はロシア語の月刊誌Морском сборнике ( Marine Digest ) の 1988 年 12 号に掲載されました。
BRP-3(ロシア語:БРП-3)は、数学問題を解くための60個のプログラムを含んでいました。1988年には15,200個が製造され、16ルーブルで販売されました。
BRP-4(ロシア語:БРП-4)は1989年にゲームプログラムを搭載して製造された。
GRP「ジオ」。
別の拡張ポートは製造時の診断に使用されました。このポートは電卓を外部周辺機器に接続するためにも使用できます。
MK-52には、自動モードとプログラミングモードという2つの主要な動作モードがあります。自動モードでは一般的な計算や演算が実行され、プログラミングモードではプログラムが入力として入力されます。キー入力シーケンス「F+」/-/はMK-52を自動モードに切り替え、「+」はプログラミングモードに切り替えます。 FВП
自動モードでの手動計算は、逆ポーランド記法に基づいて行われます。例えば、2+3を計算するには、+ + +というキー操作が必要です。 2В↑3+
MK-52は2進数のブール演算を完全に実行できます。次の例は、2進数とに対するOR論理演算を示しています。 111000100001
2 進数は、先頭に . が付いた 16 進数として計算機に入力されます8。
まず、演算子は数値を4桁のグループに分割し、必要に応じて先頭にゼロを追加します。例えば、1110004桁のグループに分割すると、0011とになります1000。これら2つの4桁の2進数の163進値はそれぞれとであり8、16進数 に等しくなります38。
同様に、100001は 16 進数 と同等です21。
つまり、数字8.38とが8.21MK-52に入力され、それらのOR演算が実行されます。OR演算は+を押すことで実行されます。 K/-/
表示される結果は で8.39、これは 2 進数 および に変換され0011、1001したがって 2 進数 となり111001、これが結果となります。
MK-52における16進数のグラフィカル表現は以下のとおりです:0、1、2、3、4、5、6、7、8、9、-、L、C、Г、E、(空白)。通常の16進数表現は、0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、Fです。
MK-52のプログラミングコマンドは、プログラミングモードでMK-52に入力され、実行されます。MK-52は、メモリ管理と条件分岐および無条件分岐の両方を使用するようにプログラムすることができます。
プログラミングモードでは、メモリ内のプログラムに関する情報が2桁の16進数オペレーションコードで画面に表示されます。例えば、10 01 0E 03が表示されている場合は、0Eプログラムステップ00に が保存され、01プログラムステップ01に が保存され、10プログラムステップ02に が保存され、プログラムステップ03に保存するデータの入力を求められていることを意味します。
例として、次の短いプログラム[ 6 ]は、Elektronika MK 52電卓の速度を知るために連続加算を実行します。
Elektronika MK-52 電卓のプログラムを入力するためのキーストロークは次のとおりです。
FПРГВ↑1+B/0C/ПFABT
実行するには:
1B/0C/П
停止するには:
C/ПまたはCX
ストップウォッチを使用し、一定時間経過後にプログラムを終了することで、電卓のおおよその速度を計測することができます。
プログラムを揮発性メモリに入力し、そのプログラムをEEPROMメモリに保存する前に、保存先の EEPROM プログラム領域を最初にクリアする必要があります。これにより、揮発性メモリと EEPROM メモリの選択された領域がクリアされます。
各プログラム ステップには 1バイトのメモリが必要であり、各データ レジスタには 7 バイトのメモリが必要です。
EEPROMメモリのクリア、読み取り、または書き込みを行う際、自動モードでは、アドレスと範囲は6桁の数字で指定され、その前に0以外の数字が付きます。例えば、メモリアドレス からバイトが格納されることを1aaaadd指定します。2ポジションのデータ/プログラムスイッチは、データ(レジスタから)またはプログラムメモリのどちらを転送するかを制御します。3ポジションスイッチは、読み取り、書き込み、およびクリア操作を選択するために使用されます。 ddaaaa
エレクトロニカMK-52は当初115ルーブルで販売されました。黒とグレー、ターコイズと青、白とグレー、オレンジなど、様々なカラーバリエーションが生産されました。ソビエト時代の電子機器の典型として、MK-52の購入時には技術図面が提供され、ユーザーによる改造や修理が容易になりました。


マシンにエラーが発生すると、ディスプレイには英語の「error」に似たメッセージが表示されました。この表記法はエラーメッセージの表示に必要なディスプレイセグメントの数を削減しましたが、キリル文字で「е」と読むこの綴りは、言語によって「eggog」または「yeggog」と発音されます(キリル文字の「е」はロシア語とベラルーシ語では発音され、さらにソビエト連邦が非スラブ語のために作成したロシア語由来の正書法でも発音されますが、ウクライナ語、ブルガリア語、セルビア語などの他のスラブ語では発音されません)。
MK-52には数多くのゲームが用意されています。MK-52の非公式関数は、特殊な計算や特殊な表示を行う能力があるため、ゲームで頻繁に使用されます。表示の変更の簡単な例として、繰り返し二乗演算が挙げられます。1 × 10 50 (エラー メッセージは無視します)。
1988年11月、MK-52はソユーズTM-7宇宙船に搭載されて宇宙に飛び立ち、搭載コンピューターの故障の際に着陸の軌道を計算するために使用された可能性があります。
現在、MK-52 には 1 つのバグが知られています。それは、2 つの引数のうちの 1 つがゼロの場合、MAX 関数はゼロを返します。