2

私はこのファイルhttp://pastebin.com/pH4Pk0sfを拡張子なしで持っています、そしてそれがホストされているコンピュータがBASIC、COBOL、そして「KEYBASIC」と呼ばれるものを使用しているのでそれはCOBOLかもしれません...私はこのコードを理解していません。 。私はいくつかの行で行いますが、すべてではありません。

これをC#に変換したいのですが、誰かがどの言語か教えてくれれば、もっと掘り下げることができるかもしれません。

プログラムはこの他のファイルhttp://pastebin.com/rdbdappQを読み取り、プリンター用の出力を作成します... Windowsプログラム(C#経由)で同じことを行うには、それがどのように機能するかを知る必要があります。 。

ありがとうございました。

アップデート

よろしくお願いします。コードを再作成しようとしています。OPEN '3/1/TABPRESU' FOR RANDOM IO ELSE DISPLAY 'NO ABRE TABPRESU';STOP「3/1/TABPRESU」とは何なのかわかりません。もちろんファイルです。「TABPRESU」を持っていますが、「3」とは何ですか。 / 1 "?存在しないため、ファイルシステムではありませんか、それともある種のデータベースですか?

私たちが使用しているプログラムはSovereignXです。UNIXでは、ユーザーがSovereignXからUNIXファイルシステムにファイルをコピーできるオプションUNIXCOPYがあります。SovereignXに関する情報は見つかりませんでした...

すべてのソースコードを確認して再作成する方法を見つけると非常に役立ちますBE。(バッチエントリ)というコマンドでINPUTを実行します。OS全体をFTP経由でUSBドライブにダウンロードしようとしています(マシンがUBUNTU LIVE USBを起動しない理由はわかりません。マザーボードでは起動できますが、何も起こらないため、FTP経由でダウンロードして試してみてください。いくつかの仮想マシンで実行するには...

http://en.wikipedia.org/wiki/Northgate_Information_Solutions

NorthgateがMicrodata(SovereignXの作成者)を購入し、次にMcdonellDouglasがnorthgateを購入しました...この調査は私を殺しています...すべてがDATA/BASICおよびPROCで記述されたある種のデータベースの下にあるようです

http://timmcnulty.iofm.net/realityx.htm

UPDATE 2 それは基本的な言語です...しかし、NP ++でファイルを開くと、少し面倒です。SovereignXからエクスポートする必要があります。そうすれば、読み取ることができます...しかし、100個までのファイルでそれを行うのは極端です...誰かKeyBasic IDEを知っていますか?うーんありがとう

UPDATE 3 このプログラムが持っている.DATファイルと.IDXファイルはパスワードで保護されており、コンソールからはパスワードを要求されませんが、DBISAM Viewerを使用している場合は、パスワードを要求されます。誰もパスワードを知りません...くそー

4

4 に答える 4

5

間違いなく基本的な方言。かなり古いコードなので、あまり曖昧なものはありません。IF...THENはIF...THENです。

番号が付けられた行590(ペーストビンの10行目から38行目)の間のコードがメインの処理ループです。行のGOSUBは、メインループから呼び出されるサブルーチンです50009000

方言に関係なく、ここで見られるより難解な機能のいくつか:

  • OCONVはフォーマット機能です。sprintf()のように考えてください
  • PRINTステートメントは、空白以外の各行の前にスペースを挿入しているように見えます。古いスタイルのラインプリンタは、印刷行の最初の文字を、新しいページに進むための制御文字として解釈することがよくあります。スペースは「行を印刷するだけ」を意味します

アップデート

私が最初に読んだときに見逃したことがあります。ブラケット構文は部分文字列操作を実行しています。したがって、たとえば、ペーストビンの12行目のコードは

IF R[26,2]='20' THEN GOSUB 9000;GOTO 5

READバッファの文字26および27( at行に関連付けられている5)を文字列と比較しています'20'。次の行の、R[26,2]#30#等しくない演算子です。

アップデート

私はあなたと一緒です、すべてのフォーマット文字列がドキュメントで説明されているわけではありません。しかし、、、、およびCOBOLの場合と同じように機能するのではないかと思いますZ9,

  • Z:先行ゼロを抑制:対応する数字と左側のすべての数字がゼロの場合はスペースを印刷し、それ以外の場合は数字を印刷します
  • ,:左側に空白以外/ゼロ以外の数字がある場合はコンマを出力し、そうでない場合はスペースを出力します
  • 9:ゼロであっても、対応する桁を出力します

したがって、次のフォーマット文字列を使用しますMDZZ,ZZ9

0     prints as      0
12    prints as     12
123   prints as    123
1234  prints as  1,234
12345 prints as 12,345

アップデート

Pastebin内のステートメントの構文は、OPENCachéMultiValueBasicまたはUniBasicのドキュメントと完全には一致しません。ただし、文字列の一部は'1/1/FSNC0128S'チャネル番号1を表していると推測できます。これは、

5    READ R FROM 1 ELSE GOTO 90

PerlのファイルハンドルやCファイル記述子のようなチャネル番号を考えてみてください。

1文字列内の他の部分が何らかのアクセス修飾子であるという仮定の下で作業し(FOR RANDOM IO矛盾しているように見えますが)、ファイルの検索に集中しますFSNC0128S

于 2013-03-19T14:03:54.957 に答える
3

1976/77年頃にKEYBASICを実装したので、元々は何だったのかわかります。私はCMCでソブリンシステムに取り組み、データ入力システムを実装しました。同社にはすでに、ソブリンシステムで実行されるかなり標準的なベーシックインタープリターとランタイムシステムがありました。複数のデータ入力ユーザーが1つのソブリンプロセッサを使用し、次にすべて「K」で始まる追加のデータ入力指向関数を追加したため、最初にこれをタイムシェアリングに変更しました。その後、変更された言語は「KEYBASIC」と呼ばれました。

于 2013-07-25T11:58:12.860 に答える
2

Cache MultiValue Basicは、私が見つけることができる最適なものです。

于 2013-03-19T13:35:21.613 に答える
0

それは間違いなくBASICの方言です。数年前、Data Generalには、本格的なマルチユーザービジネスアプリケーションで当時目立っていた基本バージョンがありました。ウィキペディアには、この方言といくつかの同様の競合他社について言及している記事があります。

http://en.wikipedia.org/wiki/Data_General_Business_Basic

コードが非常に古い場合、それがCBASICである可能性を確認しましたか?CBASICは、初期のマイクロコンピューターでビジネスアプリケーションを開発するための一般的な方法でした。

http://en.wikipedia.org/wiki/CBASIC

于 2013-03-19T13:55:24.863 に答える