英語フランス語スペイン語

OnWorksファビコン

bwbasic-クラウドでのオンライン

Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、またはMACOSオンラインエミュレーターを介してOnWorks無料ホスティングプロバイダーでbwbasicを実行します

これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのXNUMXつを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドbwbasicです。

プログラム:

NAME


bwbasic-BywaterBASICインタープリター/シェル

Bywater BASICインタープリター/シェル、バージョン2.10
---------------------------------------------

Copyright(c)1993、Ted A. Campbell
bwBASICバージョン2.10の場合、11年1993月XNUMX日

目次:

1.説明
2.利用規約
3.コマンドと機能のクイックリファレンスリスト
4.使用に関する一般的な注意事項
5.コマンドと機能の拡張リファレンス
6.事前定義された変数
7.実装されていないコマンドと機能
と開発のための議事オ
8. BYWATERBASICのストーリー
9.コミュニケーション

著者は、DavidMacKenzie氏に感謝の意を表します。
Unixのインストールと構成の開発を支援した人
このバージョンの場合。

1.説明

Bywater BASICインタープリター(bwBASIC)は、大規模な
最小限のBASICのANSI規格のスーパーセット(X3.60-1978)
フルベーシックのANSI規格の重要なサブセット
(X3.113-1987)Cで。シェルプログラミング機能も提供します
BASICの拡張として。 bwBASICは、移植性を追求しています
可能な限り。

bwBASICは、機能、コマンド、および
さまざまなタイプのBASICインタープリターで使用可能な関数。
インストールの詳細については、INSTALLファイルを参照してください。

通訳はかなり遅いです。 選択に直面したときはいつでも
概念の明確さとスピードの間で、私は一貫して選択しました
前者。 インタプリタは利用可能な最もシンプルなデザインですが、
速度を上げる中間コードのシステムを利用していません
その操作をかなりアップします。 そのまま、各行が解釈されます
通訳がそれに来ると新たに。

bwBASICは、以前のBASICでは利用できなかったXNUMXつの機能を実装します
通訳者:シェルコマンドは、
bwBASICプロンプト、およびインタプリタはそれを
コマンドシェル。 たとえば、コマンド「dir * .bas」は次のようになります。
bwBASIC(DOSの場合は「ls-l * .bas」)で入力し、
オペレーティングシステムのコマンドラインから実行されます。
シェルコマンドは、bwBASICの番号付き行で指定することもできます
プログラム。これにより、bwBASICをシェルプログラミングとして使用できます。
言語。 bwBASICによるRMDIR、CHDIR、MKDIRの実装、
NAME、KILL、ENVIRON、およびENVIRON $()コマンドと関数
さらなるシェル処理機能を提供します。

2.利用規約:

Bywater BASICのこのバージョンは、
これと一緒に配布されるGNUGeneral Public License(GPL)
ファイル「COPYING」内のソフトウェア。 GPLは用語を指定します
その下で、ユーザーはこのディストリビューションのソフトウェアをコピーして使用できます。

別のライセンスが商用配布に利用できます。
作者に連絡する必要がある情報については。

3.コマンドと機能のクイックリファレンスリスト

これらのコマンドと関数の多くはそうではないことに注意してください
ヘッダーファイルに特定のフラグを設定していない限り利用可能
(依存関係については、以下の拡張リファレンスセクションを参照してください)。

ABS(番号)
ASC(文字列$)
ATN(番号)
CALLサブルーチン名
ケースその他| IF部分式| 絶え間ない
CHAIN [MERGE]ファイル名[、行番号] [、ALL]
CHDIRパス名
CHR $(数値)
CINT(数値)
CLEAR
CLOSE [[#] file-number]..。
CLS
COMMON変数[、変数...]
COS(番号)
CSNG(番号)
CVD(文字列$)
CVI(文字列$)
CVS(string $)
データ定数[、定数]..。
DATE $
DEF FNname(arg ...)] =式
DEFDBLレター[-レター](、レター[-レター])..
DEFINT文字[-文字](、文字[-文字])..。
DEFSNGレター[-レター](、レター[-レター])..
DEFSTR文字[-文字](、文字[-文字])..。
DELETE line [-line]
DIM変数(要素...)[変数(要素...)]..。
DO NUM | UNNUM
DO [WHILE式]
EDIT
ELSE
エルセイフ
END IF | 機能| 選択| サブ
ENVIRON変数-文字列=文字列
ENVIRON $(変数文字列)
EOF(デバイス番号)
ERASE変数[、変数]..。
ERL
ERR
エラー番号
EXP(数値)
FIELD [#]デバイス番号、番号AS文字列変数[、番号AS文字列変数...]
ファイルfilespec $
FUNCTION
FORカウンター=開始から終了[ステップ増分]
GET [#]デバイス番号[、レコード番号]
GOSUB行| ラベル
GOTOライン| ラベル
HEX $(数値)
IF式THEN [ステートメント[ELSEステートメント]]
INKEY $
INPUT [#device-number] | [;] ["promptstring";]変数のリスト
INSTR([start-position、] string-searched $、string-pattern $)
INT(数値)
KILLファイル名
LEFT $(string $、スペースの数)
LEN(文字列$)
LET変数=式
LINE INPUT [[#] device-number、] ["prompt string";] string-variable $
LIST行[-行]
LOADファイル名
LOC(デバイス番号)
LOCATE行、列
LOF(デバイス番号)
LOG(番号)
LOOP [UNTIL式]
LSET文字列変数$ =式
MERGEファイル名
MID $(string $、start-position-in-string [、number-of-spaces])
MKD $(数値)
MKDIRパス名
MKI $(数値)
MKS $(数値)
NAME 旧ファイル名 AS 新ファイル名
NEW
NEXT [カウンター]
OCT $(数値)
ON変数GOTO | GOSUB line [、line、line、...]
ON ERRORGOSUB行
OPEN "O" | "I" | "R"、[#]デバイス番号、ファイル名[、レコード長]
ファイル名FORINPUT | OUTPUT | APPEND AS [#] device-number [LEN = record-length]
オプションベース番号
POS
PRINT [#device-number、] [USING format-string $;]式..。
PUT [#]デバイス番号[、レコード番号]
QUITを
ランダム化番号
READ変数[、変数]..。
REM文字列
RESTOREライン
リターン
RIGHT $(文字列$、スペースの数)
RMDIRパス名
RND(番号)
RSET文字列変数$ =式
RUN [行] [ファイル名]
ファイル名を保存
SELECTCASE式
SGN(番号)
SIN(番号)
SPACE $(数値)
SPC(番号)
SQR(番号)
STOP
STR $(数値)
STRING $(数値、ASCII値|文字列$)
SUBサブルーチン名
SWAP変数、変数
SYSTEM
TAB(番号)
TAN(番号)
時間$
タイマー
トロフ
トロン
VAL(string $)
ヴェンド
WHILE式
WIDTH [#デバイス番号、]番号
WRITE [#device-number、] element [、element]...。

4.使用法に関する一般的な注意事項:

4.a. インタラクティブな環境

フラグがINTERACTIVEの場合、インタラクティブな環境が提供されます
bwbasic.hではTRUEとして定義されているため、
行番号はbwBASICプロンプトで入力でき、次のようになります。
メモリ内のプログラムに追加されました。

行番号は厳密には必須ではありませんが、
プログラミングにはインタラクティブな環境が使用されます。 長いため
プログラムエントリは、ASCIIテキストエディタを使用することを好むかもしれません。
この場合、行は数字なしで入力できます。 使用できます
行に番号を付けたり、番号を外したりするには、DONUMおよびDOUNNUMを実行します。 も参照してください
疑似コマンドEDITについては、以下のドキュメントを参照してください。

4.b. 命名規則

コマンド名と関数名では大文字と小文字は区別されません。
そのため、「Run」と「RUN」と「run」は同等であり、「abs()」です。
「ABS()」と「Abs()」は同等です。 ただし、可変
bwbASICでは名前は大文字と小文字が区別されるため、「d $」と「D $」は
異なる変数です。 これは一部のBASICとは異なります
変数名で大文字と小文字が区別されない実装。

変数名には、任意の英字、ピリオドを使用できます
アンダースコア文字とXNUMX進数(ただし、
最初の位置)。 '#'または '!'で終了できます。 に
精度が
bwBASICとは無関係です。

4.c. 数値定数

数値定数は、0〜9(XNUMX進数)の数字で始まり、
「&H」または「&h」(XNUMX進数)または「&o」または「&O」(XNUMX進数)。
XNUMX進数は、「E」、「e」、「D」、または「d」で終了する場合があります
指数表記を示すために指数番号が続きます。
XNUMX進定数は、「#」または「!」で終了することもできます。
ただし、Microsoftスタイルの精密ターミネータに準拠するため
指定された精度は、bwBASICとは無関係になります。

4.d. コマンドライン実行

ファイル名はコマンドラインで指定でき、次のようになります。
LOADEDを実行してすぐに実行するため、コマンドライン

bwbasic プログレベース

「prog.bas」をロードして実行します。

4.e. プログラムストレージ

すべてのプログラムはASCIIテキストファイルとして保存されます。

4.f. 真と偽

デフォルトでは、TRUEは-1として定義され、FALSEは0として定義されます。
bwBASICの配布。 これらの定義は、次の方法で変更できます。
bwBASICをコンパイルするもの(ファイルBWBASIC.Hを参照)。

4.g. 課題

変数に割り当てる必要があります。 これはいくつかとは異なります
に割り当てることができるBASICの実装
関数。 意味:「INSTR(3、x $、y $)= z $」は
bwBASICの下で動作します。

4.h. 演算子と優先順位

bwBASICは、次の演算子をそのレベルで認識します
与えられた優先順位(1 =最高):

^ 1のべき乗
* 2乗算
/ 2分割
3整数除算
+5追加
-5減算
= 6の平等または割り当て
MOD 4モジュラス(剰余)演算
<> 7つの不等式
<8未満
> 9より大きい
<= 10以下
= <10以下
> = 11以上
=> 11以上
12否定ではありません
AND13接続詞
または14論理和
XOR15排他的または
IMP16の意味
EQV17の同等性

4.h. 数値精度(NOT)

bwBASICは、XNUMXレベルの精度で数値を使用します。 もしも
フラグNUMBER_DOUBLEは、bwbasic.hでTRUEとして定義されています。
実装される精度は、Cの「double」データ型の精度になります。
それ以外の場合(デフォルト)、精度はCの「浮動小数点」の精度になります
タイプ。 いくつかのポイントでコマンド(または疑似-
コマンド)Microsoftスタイルの精度を認識しているようです
違いはありますが、ほとんどの場合、これらは単なる回避策です。
Microsoftスタイルのプログラムを実行できるようにするエイリアス。

5.コマンドと機能の拡張リファレンス

以下の参考資料に記載されている「依存関係」
bwbasic.hでTRUEに設定する必要があるフラグを参照します。
実装される関連コマンドまたは機能。 これらのフラグ
以下の通り:

(コア)の任意の実装におけるコマンドと関数
bwBASIC; これらはANSIMinimalBASICコアです

インタラクティブプログラミングをサポートするインタラクティブコマンド
環境

一般的なANSIMinimalBASIC以外のCOMMON_CMDSコマンド
完全なANSIBASICおよびMicrosoftBASICへ

COMMON_FUNCS ANSI Minimal BASICコアを超えて機能しますが、
ANSI FullBASICとMicrosoftスタイルの両方に共通
基本的な品種

Unixスタイルのディレクトリと
Cで指定されていない環境ルーチン

STRUCT_CMDS構造化プログラミングに関連するコマンド。 全て
これらのうち、完全なANSIBASIC規格の一部です

ANSI_FUNCS ANSI FullBASICに固有の関数

MicrosoftBASICに固有のMS_CMDSコマンド

MS_FUNCS MicrosoftBASICに固有の関数

------------------------------------------

機能:ABS(番号)

説明:ABSは、引数 'number'の絶対値を返します。

依存関係:(コア)

------------------------------------------

関数:ASC(string $)

説明:ASCは、の最初の文字のASCIIコードを返します
引数string $。

依存関係:MS_FUNCS

------------------------------------------

関数:ATN(数値)

説明:ATNは、引数 'number'のアークタンジェント値を返します
ラジアンで。

依存関係:(コア)

------------------------------------------

コマンド:CALLサブルーチン名

説明:CALLは、名前付きサブルーチンを呼び出します(SUBおよびEND SUBを参照)。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:CASE ELSE | IF部分式| 絶え間ない

説明:CASEは、SELECTCASEステートメントの要素を導入します
(SELECT CASEを参照)。 CASEIFは条件付きを導入します
SELECT CASE要素、およびCASEELSEは
デフォルトのSELECTCASE要素。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:CHAIN [MERGE] file-name [、line-number] [、ALL]

説明:CHAINは、制御を別のBASICプログラムに渡します。
COMMON(qv)と宣言された変数が渡されます
新しいプログラムに。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:CHDIR pathname $

説明:CHDIRは、現在のディレクトリを指定されたディレクトリに変更します
引数pathname $によって。

依存関係:UNIX_CMDS

------------------------------------------

関数:CHR $(数値)

説明:CHR $は、文字を含むXNUMX文字の文字列を返します
引数で示されたASCIIコードに対応
'番号'。

依存関係:COMMON_FUNCS

------------------------------------------

関数:CINT(数値)

説明:CINTは、引数の切り捨てられた整数を返します
'番号'。

依存関係:MS_FUNCS

------------------------------------------

コマンド:CLEAR

説明:CLEARは、すべての数値変数を0に設定し、すべて
文字列変数をnullにします。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:CLOSE [[#] file-number]..。

説明:CLOSEは、file-numberで示されたファイルを閉じます
(OPENを参照)。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:CLS

説明:CLSは表示画面をクリアします(IBMおよび互換機
バージョン2.10以降のみ)。

依存関係:IMP_IQCおよびIMP_CMDLOC

------------------------------------------

コマンド:CMDS

説明:CMDSは、リストを出力するデバッグコマンドです。
実装されたすべてのbwBASICコマンドの。

依存関係:デバッグ

------------------------------------------

コマンド:COMMON変数[、変数...]

説明:COMMONは、CHAINedに渡される変数を指定します
プログラム(CHAINを参照)。

依存関係:COMMON_CMDS

------------------------------------------

関数:COS(数値)

説明:COSは引数 'number'のコサインを返します
ラジアンで。

依存関係:(コア)

------------------------------------------

関数:CSNG(数値)

説明:CSNGは、以下では効果がない疑似関数です。
bwBASIC。 Microsoftタイプのコマンドを複製します
これにより、「数値」が単精度に変換されます。

依存関係:MS_FUNCS

------------------------------------------

関数:CVD(string $)

説明:CVDは引数string $をbwBASICに変換します
数値(bwBASICでは精度は関係ありません。
bwBASIC番号の精度はXNUMXつだけです)。

実装固有の注意:

CVD()、CVI()、CVS()、MKI $()、MKD $()、MKS $():これらの関数
実装されていますが、a)整数のサイズに依存しています。
浮動小数点数、および特定のシステムの倍精度値、およびb)どのように
Cの特定のバージョンは、これらの数値を格納します。 The
つまり、これらの関数を使用して作成されたデータファイル
DOSベースのマイクロコンピュータでは正しく翻訳されない場合があります
Unixベースのコンピュータで実行されているbwBASICによる。 同様に、データ
CのXNUMXつのバージョンによってコンパイルされたbwBASICによって作成されたファイルは
別のバージョンのCによってコンパイルされたbwBASICで読み取り可能(
同じオペレーティングシステム)。 したがって、これらに注意してください。

依存関係:MS_FUNCS

------------------------------------------

関数:CVI(string $)

説明:CVIは引数string $をbwBASICに変換します
数値(bwBASICでは精度は関係ありません。
bwBASIC番号の精度はXNUMXつだけです。 も参照してください
CVDに関する注記)。

依存関係:MS_FUNCS

------------------------------------------

関数:CVS(string $)

説明:CVIは引数string $をbwBASICに変換します
数値(bwBASICでは精度は関係ありません。
bwBASIC番号の精度はXNUMXつだけです。 も参照してください
CVDに関する注記)。

依存関係:MS_FUNCS

------------------------------------------

コマンド:DATA定数[、定数]..。

説明:DATAは、数値定数と文字列定数を次のように格納します
READ(qv)によってアクセスされます。

依存関係:(コア)

------------------------------------------

機能:DATE $

説明:DATE $は、コンピューターの日付に基づいて現在の日付を返します。
「YYYY-MM-DD」形式の文字列としての内部クロック。
bwBASICで実装されているように、DATE $は
割り当て(つまり、システム日付を設定するため)。

注:現在のbwBASIC(v2.10)では割り当てが許可されていません
関数に。

依存関係:COMMON_FUNCS

------------------------------------------

コマンド:DEF FNname(arg ...)] =式

説明:DEFはユーザー作成関数を定義します。 この機能
Microsoftタイプの実装に対応しますが、
bwBASICのDEFは、機能と同等の機能です。

依存関係:(コア)

------------------------------------------

コマンド:DEFDBL文字[-文字](、文字[-文字])..。

説明:DEFDBLは、XNUMX文字の名前で変数を宣言します
数値変数として(精度は
bwBASIC)。

依存関係:MS_CMDS

------------------------------------------

コマンド:DEFINT letter [-letter](、letter [-letter])..。

説明:DEFINTは、XNUMX文字の名前で変数を宣言します
数値変数として(精度は
bwBASIC)。

依存関係:MS_CMDS

------------------------------------------

コマンド:DEFSNG文字[-文字](、文字[-文字])..。

説明:DEFSNGは、XNUMX文字の名前で変数を宣言します
数値変数として(精度は
bwBASIC)。

依存関係:MS_CMDS

------------------------------------------

コマンド:DEFSTR文字[-文字](、文字[-文字])..。

説明:DEFSTRは、XNUMX文字の名前で変数を宣言します
文字列変数として。

依存関係:MS_CMDS

------------------------------------------

コマンド:DELETE line [-line]

説明:DELETEは、
引数。 非-にDELETEを使用したい場合
番号付きプログラム、最初にDO NUMを使用し、次にDELETEを使用します。
次に、UNNUMを実行します。

依存関係:インタラクティブ

------------------------------------------

コマンド:DIM変数(要素...)[変数(要素...)]..。

説明:DIMは、複数の変数を持つ変数を指定します
一次元の要素、すなわち配列
変数。

注:bwBASICで実装されているように、DIMは
変数フィールドの区切り文字としての括弧。
(一部のBASICでは、角かっこを使用できます。)

依存関係:(コア)

------------------------------------------

コマンド:DO NUM | UNNUM

説明:DO NUMは、プログラム内のすべての行に番号を付けます。 最初
行には番号10が付けられ、後続の行には
10の倍数で連続して番号が付けられます。DO
UNNUMは、プログラムからすべての行番号を削除します。
これらの関数は行に何もしないことに注意してください
番号、たとえば、GOSUBまたはGOTOステートメントの後。
これらのコマンドは、の代わりとして使用することはできません
RENUM(一部のシステムでは使用可能ですが、bwBASICでは使用できません)。
ただし、これらのコマンドを使用すると、開発することができます
番号付きの新しい行を入力して番号のないプログラム、
次に、DO UNNUMを実行して、行番号を削除します。
LOADおよびSAVE(qv)と一緒に使用できます
プリミティブテキストエディタとしてのbwBASIC。

依存関係:インタラクティブ

------------------------------------------

コマンド:DO [WHILE式]

説明:DOは、さまざまな形式のプログラムループを実装します。
DO ... LOOPは単にループします。 唯一の方法は
出口; DO WHILE ... LOOPは「式」が
true(これは古いWHILE-WENDと同等です
ループ、これもbwBASICに実装されています); DO ... LOOP UNTIL
UNTILに続く式が真になるまでループします。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:編集

説明:EDITは、テキストエディタを呼び出す疑似コマンドです。
変数BWB.EDITOR $で指定して、
メモリ内のプログラム。 テキストエディタを呼び出した後、
(編集された)プログラムがメモリにリロードされます。 ユーザー
通常、有効なパスとファイル名をで指定する必要があります
このコマンドの前のBWB.EDITOR $が役立ちます。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:ELSE

説明:ELSEは、複数行のIFにデフォルト条件を導入します
声明。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:ELSEIF

説明:ELSEIFは、マルチで二次的な状態を導入します
行IFステートメント。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:END IF | 機能| 選択| サブ

説明:END IFは、複数行のIFステートメントを終了します。 終了機能
複数行の関数定義を終了します。 終了選択
SELECTCASEステートメントを終了します。 ENDSUBはマルチを終了します
行サブルーチンの定義。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:ENVIRON変数-string $ = string $

説明:ENVIRONは、によって識別される環境変数を設定します
変数-string $からstring $へ。

これは実装とは異なることに注意してください
一部のバージョンのBASICではENVIRONを使用しますが、bwBASICのENVIRON
Equalsのいずれかの側でBASIC変数を使用できるようにします
サイン。 関数ENVIRON $()は
コマンドを実行し、一部のオペレーティングシステムでは
プログラム内で設定された環境変数は渡されません
親シェルに。

依存関係:UNIX_CMDS

------------------------------------------

関数:ENVIRON $(変数文字列$)

説明:ENVIRON $は、に関連付けられた環境変数を返します
名前variable-string $。

依存関係:MS_FUNCS

------------------------------------------

関数:EOF(デバイス番号)

説明:デバイスが関連付けられている場合、EOFはTRUE(-1)を返します
デバイス番号はファイルの終わりにあります。それ以外の場合は、
FALSE(0)を返します。

依存関係:MS_FUNCS

------------------------------------------

コマンド:ERASE variable [、variable]..。

説明:ERASEは、配列された変数をプログラムから削除します。

依存関係:COMMON_CMDS

------------------------------------------

機能:ERL

説明:ERLは、最新のエラーの行番号を返します。

依存関係:MS_FUNCS

------------------------------------------

機能:ERR

説明:ERRは、最新のエラーのエラー番号を返します。

bwBASICがであるときにPROG_ERRORSが定義されている場合は注意してください
コンパイルすると、ERR変数は正しく設定されません
エラー。 標準のエラーメッセージが使用されている場合にのみ機能します。

依存関係:MS_FUNCS

------------------------------------------

コマンド:エラー番号

説明:ERRORはエラーをシミュレートします。つまり、メッセージを表示します。
そのエラーに適しています。 このコマンドは役に立ちます
識別できるONERRORGOSUBルーチンの記述
特別な扱いのためのいくつかのエラー、そしてエラーエラー
(つまり、デフォルトの処理)他のすべての場合。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:EXIT [FOR]

説明:EXIT自体がDO ... LOOPループを終了します。
EXIT FORは、FOR ... NEXTループを終了します。

依存関係:STRUCT_CMDS

------------------------------------------

関数:EXP(数値)

説明:EXPは、「数値」の指数値を返します。

依存関係:(コア)

------------------------------------------

コマンド:FIELD [#]デバイス番号、番号AS文字列変数$ [、番号AS文字列変数$ ...]

説明:FIELDは、デバイスのランダムファイルバッファーにスペースを割り当てます
デバイス番号で示され、「number」バイトを割り当てます
この位置のバイトを変数に割り当てます
文字列変数$。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:FILES filespec $

説明:FILESは、ディレクトリプログラムを呼び出す疑似コマンドです。
変数BWB.FILES $で引数を指定して指定
filespec $。 通常、ユーザーはこの変数を設定する必要があります
FILESを使用する前に。 たとえば、PCタイプのコンピュータの場合、

BWB.FILES $ = "DIR"

Unixマシンの場合、動作します

BWB.FILES $ = "ls -l"

等々

依存関係:COMMON_CMDS

------------------------------------------

コマンド:FNCS

説明:CMDSは、リストを出力するデバッグコマンドです。
すべての事前定義されたbwBASIC関数の。

依存関係:デバッグ

------------------------------------------

コマンド:FUNCTION

説明:FUNCTIONは、通常、関数定義を導入します
ENDFUNCTIONで終了します。 bwBASICでは、FUNCTIONと
DEFは同等に機能するため、どちらも使用できます
単一行の関数定義または複数の
行定義はENDFUNCTIONで終了します。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:FORカウンター=開始から終了[ステップ増分]

説明:FORは、変数を使用してFOR-NEXTループを開始します
'counter'は最初に 'start'に設定され、インクリメントします
'increment'ステップ(デフォルトは1)で 'counter'まで
'finish'に等しい。

依存関係:(コア)

------------------------------------------

コマンド:GET [#] device-number [、record-number]

説明:GETは、ランダムアクセスファイルから次のレコードを読み取ります
またはデバイスをそのファイルに関連付けられたバッファに入れます。
record-numberが指定されている場合、GETコマンドは
指定されたレコード。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:GOSUB行| ラベル

説明:GOSUBは、行(またはラベル)へのサブルーチン呼び出しを開始します
指定。 サブルーチンはRETURNで終了する必要があります。

依存関係:(コア)、ただしラベルのSTRUCT_CMDS

------------------------------------------

コマンド:GOTO行| ラベル

説明:GOTOは、プログラムの実行を指定された行に分岐します
(またはラベル)。

依存関係:(コア)、ただしラベルのSTRUCT_CMDS

------------------------------------------

関数:HEX $(数値)

説明:HEX $は、16進数(基数XNUMX)を示す文字列を返します
'数値'の値。

依存関係:MS_FUNCS

------------------------------------------

コマンド:IF式THEN [ステートメント[ELSEステートメント]]

説明:IFは「式」を評価し、THENを実行します
それが真であるか(オプションで)
FALSEの場合はELSEステートメント。 STRUCT_CMDSの場合
TRUEに設定されている場合、bwBASICは複数行のIFを許可します
ELSEおよびELSEIFの場合のステートメント、終了
ENDIFを使用します。

依存関係:(コア)、複数行のIFステートメントのSTRUCT_CMDS

------------------------------------------

機能:INKEY $

説明:INKEY $はキーボードのステータスを読み取り、単一の
可能な場合はキーを押します。 キーを押すことができない場合は、
次に、INKEY $はすぐにnull文字列( "")を返します。
現在(v2.10)はbwx_iqc.cでのみ実装されています。

依存関係:IMP_IQCおよびIMP_CMDLOC

------------------------------------------

コマンド:INPUT [#device-number] | [;] ["prompt string";]変数のリスト

説明:INPUTは、端末またはデバイスからの入力を許可します
デバイス番号で指定します。 ターミナルの場合、「プロンプト
文字列」が出力され、入力が割り当てられます
適切な変数が指定されています。

bwBASICは、INPUTのオプション機能をサポートしていません
最後にキャリッジリターンとラインフィードを抑制します
入力の。 これは、Cだけでは何も提供されないためです
CR-LFで終了する文字列以外の入力手段。

依存関係:(コア)

------------------------------------------

関数:INSTR([start-position、] string-searched $、string-pattern $)

説明:INSTRは、string-pattern $が存在する位置を返します。
開始位置から始まるstring-searched $で発生します。
bwBASICで実装されているように、INSTRは
割り当て。

注:現在のbwBASIC(v2.10)では割り当てが許可されていません
関数に。

依存関係:MS_FUNCS

------------------------------------------

関数:INT(数値)

説明:INTは、以下の最大の整数を返します
引数 '数値'。 これは「切り捨てられた」ものではないことに注意してください
整数関数。CINTを参照してください。

依存関係:(コア)

------------------------------------------

コマンド:KILL file-name $

説明:KILLは、file-name $で指定されたファイルを削除します。

依存関係:UNIX_CMDS

------------------------------------------

関数:LEFT $(string $、スペースの数)

説明:LEFT $は、スペースの数を含む文字列$の部分文字列を返します
文字列の左(先頭)から)。 実装時
bwBASICでは、割り当てには使用できません。

依存関係:MS_FUNCS

------------------------------------------

関数:LEN(string $)

説明:LENは、string $のバイト単位の長さを返します。

依存関係:COMMON_FUNCS

------------------------------------------

コマンド:LET変数=式

説明:LETは、「式」の値を変数に割り当てます。
現在実装されているように、bwBASICは暗黙のLETをサポートします
ステートメント(例:先頭の「X = 4.5678」
線分または線分ですが、割り当てはサポートされていません
複数の変数に(たとえば、「x、y、z = 3.141596」)。

依存関係:(コア)

------------------------------------------

コマンド:LINE INPUT [[#] device-number、] ["prompt string";] string-variable $

説明:LINE INPUTは、キーボードまたはファイルから行全体を読み取ります
またはデバイスをstring-variable $に変換します。 入力がからのものである場合
キーボード(stdin)の場合、「プロンプト文字列」が出力されます
初め。 INPUTとは異なり、LINEINPUTは行全体を読み取ります。
カンマ区切りのデータ項目で停止しません。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:LIST line [-line]

説明:LISTは、引数で指定されたプログラム行をリストします。

依存関係:インタラクティブ

------------------------------------------

コマンド:LOADファイル名

説明:LOADは、ASCIIBASICプログラムをメモリにロードします。

依存関係:インタラクティブ

------------------------------------------

関数:LOC(デバイス番号)

説明:LOCは、GETまたはPUTステートメントの次のレコードを返します
を使用します。

依存関係:MS_FUNCS

------------------------------------------

コマンド:LOCATE行、列

説明:LOCATEは、指定された行にキュラーをアドレス指定し、
桁。 現在(v2.10)はbwx_iqc.cでのみ実装されています。

依存関係:IMP_IQCおよびIMP_CMDLOC

------------------------------------------

関数:LOF(デバイス番号)

説明:LOFはファイルの長さを返します(デバイス番号で指定)
バイト単位。

依存関係:MS_FUNCS

------------------------------------------

関数:LOG(数値)

説明:LOGは、引数 'number'の自然対数を返します。

依存関係:(コア)

------------------------------------------

コマンド:LOOP [UNTIL式]

説明:LOOPはプログラムループを終了します。DOを参照してください。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:LSET string-variable $ = expression

説明:LSETはデータを「式」から左側に転送します
文字列変数またはランダムアクセスバッファフィールドの側。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:MERGEファイル名

説明:MERGEは、「file-name」からプログラムにプログラム行を追加します
メモリ内。 LOADとは異なり、プログラムをクリアしません
現在メモリ内にあります。

依存関係:COMMON_CMDS

------------------------------------------

関数:MID $(string $、start-position-in-string [、number-of-spaces])

説明:MID $は、で始まるstring $のサブストリングを返します。
文字列内の開始位置と継続
スペース数バイト。

依存関係:MS_FUNCS

------------------------------------------

コマンド:MKDIR pathname $

説明:MKDIRは、で指定された新しいディレクトリパスを作成します
パス名$。

依存関係:UNIX_CMDS

------------------------------------------

関数:MKD $(数値)

説明:MKD $、MKI $、およびMKS $は、すべてbwBASICで同等です。
数値「数値」を文字列に変換します
より圧縮された形式でファイルに保存できます
(特にランダムなファイルアクセスの場合)。 bwBASICは
精度の違いを認識しない、これらのコマンド
実質的に同等です。

依存関係:MS_FUNCS

------------------------------------------

関数:MKI $(数値)

説明:MKD $(qv)に相当

依存関係:MS_FUNCS

------------------------------------------

関数:MKS $(数値)

説明:MKD $(qv)に相当します。

依存関係:MS_FUNCS

------------------------------------------

コマンド:NAME old-file-name AS new-file-name

説明:NAMEは、既存のファイル(old-file-name)の名前を次のように変更します
new-file-name。

依存関係:UNIX_CMDS

------------------------------------------

コマンド:NEW

説明:NEWはメモリ内のプログラムを削除し、すべてをクリアします
変数。

依存関係:インタラクティブ

------------------------------------------

コマンド:NEXT [カウンター変数]

説明:NEXTは、FOR-NEXTループの最後にあります。 FORを参照してください。

依存関係:(コア)

------------------------------------------

関数:OCT $(数値)

説明:OCT $は、8進数(基数XNUMX)を示す文字列を返します
'数値'の表現。

依存関係:MS_FUNCS

------------------------------------------

コマンド:ON変数GOTO | GOSUB line [、line、line、...]

説明:ON分岐(GOTO)またはサブルーチンの呼び出し
(GOSUB)変数の丸められた値に基づきます。
1の場合は最初の行が呼び出され、2の場合はXNUMX番目の行が呼び出されます
線が呼ばれるなど。

依存関係:(コア)

------------------------------------------

コマンド:ON ERROR GOSUB line | label

説明:ON ERRORは、エラー処理サブルーチンをセットアップします。 見る
また、エラー。

依存関係:ラベルのCOMMON_CMDS、STRUCT_CMDS

------------------------------------------

コマンド:OPEN "O" | "I" | "R"、[#]デバイス番号、ファイル名[、レコード長]
ファイル名FORINPUT | OUTPUT | APPEND AS [#] device-number [LEN = record-length]

説明:OPENは、ディスクへのアクセスにランダムアクセスメモリを割り当てます
ファイルまたは他のデバイス。 XNUMXつのまったく異なる形式に注意してください
OPENステートメントのがサポートされています。 最初の形式では、
「O」(これらの文字は引用符で囲む必要があることに注意してください
マーク)はシーケンシャル出力を示し、「I」はシーケンシャル出力を示します
入力、および「R」はランダムアクセス入力および出力を示します。
OPENすると、任意の数の操作を実行できます
デバイス上(WRITE#、INPUT#、PRINT#などを参照)。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:OPTIONBASE番号

説明:OPTION BASEは、配列の添え字の最小値を設定します。
0または1のいずれか。

依存関係:(コア)

------------------------------------------

機能:POS

説明:POSは、行内の現在のカーソル位置を返します。

依存関係:COMMON_FUNCS

------------------------------------------

コマンド:PRINT [#device-number、] [USING format-string $;]式..。

説明:PRINTは、画面またはファイルまたはデバイスにテキストを出力します
デバイス番号で指定します。 現在の実装では
bwBASICの場合、出力される式は次のように区切る必要があります。
カンマ(タブ付き出力)、セミコロン(即時)
シーケンシャル出力)またはプラス記号(イミディエイトシーケンシャル
文字列連結による出力)。 分離された式
空白またはタブによるサポートはサポートされていません。 USINGが指定されている場合、
多数のフォーマットマークがフォーマットに表示される場合があります
文字列:

! 文字列の最初の文字を出力します

\は、文字列の2 + x文字を出力します。ここで、x =
バックスラッシュ間のスペースの数

&可変長文字列フィールド

#は、の出力形式でXNUMX桁を表します


。 数値の小数点

+数字の符号(+または-を出力します)

-数字の後の末尾のマイナス

**先頭のスペースをアスタリスクで埋めます

数値の前に$$出力ドル記号

^^指数形式の出力数

_次の文字を文字通り出力する

現在実装されているように、指数形式
Cコンパイラで使用されるものになります。

依存関係:(コア)、COMMON_FUNCS for USING

------------------------------------------

コマンド:PUT [#] device-number [、record-number]

説明:PUTは、次に使用可能なレコードまたはレコードを出力します
ファイルまたはデバイスへのレコード番号で指定
デバイス番号で示されます。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:QUIT

説明:QUITはSYSTEMの同義語です。 インタラクティブで
環境では、プログラムを終了して
オペレーティングシステム(または呼び出し側プログラム)。

依存関係:インタラクティブ

------------------------------------------

コマンド:ランダム化番号

説明:RANDOMIZEは、乱数ジェネレーターをシードします(RNDを参照)。
bwBASICでは、TIMER関数(qv)を使用できます
乱数の「数値」シードを提供する
ジェネレータ。

依存関係:(コア)

------------------------------------------

コマンド:READ variable [、variable]..。

説明:READはDATAステートメントから値を読み取り、これらを割り当てます
名前付き変数の値。 READの変数タイプ
ステートメントは、DATAステートメントのデータ型と一致する必要があります
それらが発生したときに。 DATAおよびRESTOREも参照してください。

依存関係:(コア)

------------------------------------------

コマンド:REM文字列

説明:REMを使用すると、コメントをプログラムに含めることができます。 として
現在実装されている、次の行全体
REMはインタプリタによって無視されます(したがって、
MULTISEG_LINESが設定されている場合、REM回線は使用できません
セグメント区切り文字( ":")の後に別の区切り文字を見つける
コマンド付きの線分。 bwBASICは現在ありません
一重引用符のMicrosoftスタイルの使用を実装する
備考を示すためのマーク。

依存関係:(コア)

------------------------------------------

コマンド:RESTORE行

説明:RESTOREは、DATAの行および位置カウンターをリセットします
プログラムファイルの先頭にあるREADステートメントまたは
指定された行の先頭に移動します。 (現在これ
行番号である必要があります。)

依存関係:(コア)

------------------------------------------

コマンド:RETURN

説明:RETURNは、GOSUBによって呼び出されるサブルーチンを終了します。

依存関係:(コア)

------------------------------------------

関数:RIGHT $(string $、スペースの数)

説明:RIGHT $は、スペースの数を含む文字列$の部分文字列を返します
文字列の右(端)から)。 実装時
bwBASICでは、割り当てには使用できません。

依存関係:MS_FUNCS

------------------------------------------

コマンド:RMDIRパス名

説明:RMDIRは、pathnameで示されたディレクトリー・パスを削除します。

依存関係:UNIX_CMDS

------------------------------------------

関数:RND(数値)

説明:RNDは疑似乱数を返します。 '数値'値
提供されている場合、bwBASICによって無視されます。 ランダム化
コマンド(qv)は、乱数ジェネレーターを再シードします。

依存関係:(コア)

------------------------------------------

コマンド:RSET string-variable $ = expression

説明:RSETはデータを「式」から右側に転送します
文字列変数またはランダムアクセスバッファフィールドの側。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:RUN [line] [file-name $]

説明:RUNはメモリ内のプログラムを実行します。 file-name $が
指定すると、指定したファイルがメモリにロードされます
そして実行されます。 行番号が指定されている場合、実行
その行から始まります。

依存関係:インタラクティブ

------------------------------------------

コマンド:SAVE file-name $

説明:SAVEは、プログラムをメモリ内のfile-name $に保存します。 bwBASIC
ASCII形式でのみファイルを保存します。

依存関係:インタラクティブ

------------------------------------------

コマンド:SELECTCASE式

説明:SELECT CASEは、複数行の条件付き選択を導入します
声明。 SELECTの引数として指定された式
CASEは、次のCASEステートメントによって評価されます。 The
SELECTCASEステートメントはENDSELECTで終了します
声明。

現在実装されているように、CASEステートメントに従うことができます
文字列値によるが、この場合は単純な比較のみ
(等しい、等しくない)を実行できます。

依存関係:STRUCT_CMDS

------------------------------------------

関数:SGN(数値)

説明:SGNは引数 'number'、+ 1の符号を返します
正の数の場合は0、0の場合は1、負の数の場合は-XNUMX。

依存関係:(コア)

------------------------------------------

関数:SIN(数値)

説明:SINは引数 'number'の正弦を返します
ラジアンで。

依存関係:(コア)

------------------------------------------

関数:SPACE $(数値)

説明:SPACE $は、空白スペースの文字列 'number'を返します
バイト長。

依存関係:MS_FUNCS

------------------------------------------

関数:SPC(番号)

説明:SPCは空白スペースの文字列 'number'を返します
バイト長。

依存関係:MS_FUNCS

------------------------------------------

関数:SQR(数値)

説明:SQRは、引数 'number'の平方根を返します。

依存関係:(コア)

------------------------------------------

コマンド:STOP

説明:STOPはプログラムの実行を中断します。 下で実装されるように
bwBASIC、STOPはSIGINTシグナルを発行します。

依存関係:(コア)

------------------------------------------

関数:STR $(数値)

説明:STR $は、小数(基数10)を示す文字列を返します
引数 'number'の表現。

依存関係:COMMON_FUNCS

------------------------------------------

関数:STRING $(数値、ASCII値|文字列$)

説明:STRING $は、長さ 'number'バイトの文字列を返します。
string $の最初の文字または文字のいずれか
ASCII値ascii-valueに応答します。

依存関係:MS_FUNCS

------------------------------------------

コマンド:SUBサブルーチン名

説明:SUBは、名前付きの複数行のサブルーチンを導入します。 The
サブルーチンはCALLステートメントによって呼び出され、次のように終了します。
ENDSUBステートメントを使用します。

依存関係:STRUCT_CMDS

------------------------------------------

コマンド:SWAP変数、変数

説明:SWAPはXNUMXつの変数の値を交換します。 XNUMXつの変数
同じタイプ(数値または文字列)である必要があります。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:SYSTEM

説明:SYSTEMは、bwBASICから呼び出し側プログラムに終了します。
(より一般的には)オペレーティングシステム。

依存関係:インタラクティブ

------------------------------------------

関数:TAB(数値)

説明:TABは、で示される列までスペースを出力します
「番号」に達しました。

依存関係:(コア)

------------------------------------------

関数:TAN(番号)

説明:TANは、引数 'number'のタンジェントを返します
ラジアンで。

依存関係:(コア)

------------------------------------------

機能:TIME $

説明:TIME $は、コンピューターの時刻に基づいて現在の時刻を返します。
「HH-MM-SS」形式の文字列としての内部クロック。
bwBASICで実装されているように、TIME $は
割り当て(つまり、システム時刻を設定するため)。

注:現在のbwBASIC(v2.10)では割り当てが許可されていません
関数に。

依存関係:COMMON_FUNCS

------------------------------------------

機能:タイマー

説明:TIMERは、システムクロックの時刻を秒単位で返します
真夜中から経過しました。

依存関係:MS_FUNCS

------------------------------------------

コマンド:TROFF

説明:トレース機能のTROFFターン。 TRONを参照してください。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:TRON

説明:TRONはトレース機能をオンにします。 この施設は印刷します
プログラムとしての角括弧内の各行番号
実行されました。 これは、プログラムのデバッグに役立ちます
行番号。 番号のないプログラムをでデバッグするには
TRON、最初にDO NUMを呼び出しますが、DOUNNUMを呼び出すことを忘れないでください
後でプログラムを保存する前に。

依存関係:COMMON_CMDS

------------------------------------------

関数:VAL(string $)

説明:VALは文字列$の数値を返します。

依存関係:COMMON_FUNCS

------------------------------------------

コマンド:VARS

説明:VARSは、次のリストを出力するデバッグコマンドです。
グローバルスコープを持つすべての変数が定義されています。

依存関係:デバッグ

------------------------------------------

コマンド:WEND

説明:WENDはWHILE-WENDループを終了します。 WHILEを参照してください。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:WHILE式

説明:WHILEはWHILE-WENDループを開始します。 ループはで終了します
WEND、および実行は次のようにループを繰り返します
'式'がTRUE(-1)である限り。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:WIDTH [#device-number、] number

説明:WIDTHは、画面またはデバイスの出力を「数値」に設定します
列。 device-numberはデバイスを指定します
または出力用のファイル。

依存関係:COMMON_CMDS

------------------------------------------

コマンド:WRITE [#device-number、] element [、element]...。

説明:WRITEは、変数を画面またはファイルに出力します
またはdevice-numberで指定されたデバイス。 カンマ
式の出力と文字列の間に挿入されます
引用符で囲まれています。

依存関係:COMMON_CMDS

------------------------------------------

6.事前定義された変数

BWB.EDITOR $
BWB.FILES $
BWB.PROMPT $
BWB.IMPLEMENTATION $

コマンドEDITおよびFILESは、起動する疑似コマンドです。
変数BWB.EDITOR $およびBWB.FILES $で指定されたシェルプログラム、
それぞれ。 これらの変数のデフォルト値は
bwbasic.h(DEF_EDITORおよびDEF_FILES)で変更されるか、または
ユーザーがその場で変更できます。 アイデアはするかもしれません
特定の「profile.bas」でこれらの変数を初期化します
実装; たとえば、BWB.FILES $は次のように定義されます。
Unixシステムでは「ls-l」、DOSシステムでは「dir」。

プリセット変数BWB.PROMPT $を使用してプロンプトを設定できます
bwBASICの文字列。 繰り返しになりますが、ユーザーが
選択したプロンプトを「profile.bas」に設定して、
bwBASICが起動するたびに初期化されます。 特別なことに注意してください
プロンプト文字列に文字を追加できます。例:

BWB.PROMPT $ = "Ok" + CHR $(10)

「OK」プロンプトに続いて改行が表示されます。

プリセット変数BWB.IMPLEMENTATION $は、次の場合に「TTY」を返します。
bwx_ttyの実装であり、
IBM PCまたはQuickC(bwx_iqc)実装との互換性。
これは、どのコマンドと機能を決定するのに役立つ場合があります
(具体的には、CLS、LOCATE、およびINKEY $)が利用できる場合があります。

7.実装されていないコマンドと機能、および開発のためのアジェンダ

実装されていないものが長く続いているものがあります
標準のBASICの一部であり、それらがないことは驚くべきことです。
ただし、いずれの場合も、それらの実装には操作が必要になります。
ting-システム固有の機能または端末固有の機能
それは普遍的に提供することはできません。 いくつかの具体例:

CLOADは、バイナリのCP / MまたはMSDOS規則に依存しています
実行可能ファイル。

CONT以下のRESUMEを参照してください(プログラマーの無知?)。

DEF USRは、バイナリのCP / MまたはMSDOS規則に依存しています
実行可能ファイル。

FRE()空きメモリの量を報告する機能
残りはパターンが異なるため、システム固有です
メモリの割り当てとアクセス。 その結果、これ
能力はANSI以前のバージョンには存在しません
Cの場合、この関数はbwBASICでは使用できません。

INPUT $()C自体は、チョークされていないキーボードを読み取ることができません
入力し、キーボード入力を読み取ることができるのは
キャリッジリターンが入力されました。

機械語などのハードウェアポートへのINP呼び出し
ルーチンは、非常にシステム固有であり、できません
Cのみで実装されます。

LLIST以下のLPRINTを参照してください。

LPOS以下のLPRINTを参照してください。

LPRINTやLLISTなどは、プリンタデバイスへのアクセスが必要です。
これはシステムごとに異なります。 ユーザー
自分でプリンタデバイスを開こうとするかもしれません
オペレーティングシステム(例:Unixシステムの「/ dev / lp」、
またはDOSでは「PRN」)、印刷できるかどうかを確認します
このようにbwBASICから。

NULLこの場合、私はNULLはもはや存在しないと確信しています
NULLを必要とするプリンタはほとんどないため、必要です。
行の終わりに。

OUT上記のINP(ハードウェアポートへの呼び出し)を参照してください。

PEEK()PEEKとPOKEは、以前のBASICが対処できるようにしました
特定のメモリ位置。 bwBASICですが
このコマンド(POKE)を実装する可能性があります
この関数(PEEK())、制限は次のようになります
のさまざまなシステムによって非常に制限されています
さまざまなシステムでのメモリアクセス。

POKEは上記のPEEK()を参照してください。

RENUM番号のない行を入力できるため、
bwBASICで実行された場合、
RENUMルーチンを実装することが可能です。
代わりに、bwBASICはDONUMとDOUNNUMを使用します。

履歴書これはCで可能ですか? もしそうなら、私は
単にそれをまだ理解できていません。
Mea culpa(最大値ではありません)。

USR上記のCALLおよびDEFUSRを参照してください(機械語
サブルーチン)。

VARPTR上記のPEEKとPOKEを参照してください。

待機上記のINPおよびOUTを参照してください。

他のコマンド、関数、および実装の詳細があります
私が取り組んでいること、そして将来の議事リストに載っていること
bwBASICのバージョン。 これらの議題は次のとおりです。

PARACT、つまり、PARallelACTionsを実行する機能。 この
まだ見たことがありませんが、ANSIBASICで説明されています
以前に実装されました。 それはラフな、非
スコープ内のプリエンプティブ形式のマルチタスク
BASICプログラムの。 プログラマーは、そのポイントに注意します
bwBASICにはすでにPARACTのフックがあります。

XMEM PCタイプのコンピューターは、拡張を使用できる必要があります
メモリー。 プログラムに拡張メモリを使用できれば
行、変数、および関数の定義、
はるかに長いプログラムを作成します。 これには、
ただし、プログラムのかなり深刻な書き直し
これらのストレージ機能にメモリハンドルを利用する
直接メモリポインタの代わりに。

Windowsに加えてメモリハンドルの追加
プログラム行の非プリエンプティブ実行(
原油の形、すでに存在する)はそれを可能にします
Windowsの実装を開発し、おそらく
他のグラフィカルユーザーインターフェイス用。 しかし、どのような形
これを取る必要がありますか? 私は現在BASICを念頭に置いています
それはバックグラウンドで実行され、表示されるだけです
ポップアップエディタを使用して、GUIスペースのアイコンとして
および出力ウィンドウ。 したがって、通訳言語
'cron'(タスク)のような目的を果たします
スケジューラ)Unixシステムで。 あなたはいくつか持っているかもしれません
これで私を助けるだろう反射。

グラフィックスここでは、さまざまな点でかなり重大な違いに直面しています
グラフィックのスタイルと実装、たとえば
GWBASIC、ANSI BASIC、VisualBASICなど。しかし、それは
グラフィックスのコマンドと関数が
追加されます。 これらはすべて実装固有です。

フルBASICのANSI規格では、特定の
コマンドまたは関数を実装する必要があり、実際には標準
非常に堅牢です。 おそらく、BASICの実装はこれまでにないでしょう
すべての項目が含まれますが、一部のANSIコマンドおよび関数は次のようになります。
未実装のままです:

ACCESS
角度
AREA
算術
アレイ
ASK
BSTR
BVAL
セイル
セル
CLIP
コレート
CONNECT
コッシュ
DATE
DEBUG
10進数
DECLARE

デバイス
切断
DISPLAY
DOT
ドロー
ERASE
EVENT
例外
グラフ
ハンドラ
IMAGE
キー
LCケース
LINES
ログ10
ログ2
MAT
MIX
マルチポイント
でアウト
出力
パラクト
PICTURE
ピクセル
プロット
POINTS
ラジアン
RECEIVE
再番号付け
リライト
ROTATE
ROUND
つかむ
SEND
SHIFT
シン
タン
TIMEOUT
TRACE
変換
切り捨てる
ウバウンド
ユースケース
ビューポート
待つ
ビューポート
ゾーン幅

8. BYWATERBASICのストーリー

このプログラムは、もともと私の祖母夫人によって1982年に開始されました。
テキサス州ボーモントのヴェルダスペル。 彼女はを使用してプログラムを書いていました
Osborne I CP / Mコンピューター上のANSICコンパイラー
祖父(Lockwood Spell)は、256kのIBMPCを購入していました。
RAM私の祖母はそれを使用しませんでした、ジョージハーバートを言い換えます
「64kプログラムではできない人、512kではできない人」という趣旨で。
彼女はMicrosoftBASICを使用していましたが、反対するものは何もありませんでした。
なぜデジタルなのかわからないと繰り返し言った
調査では、バージョン1.0の「Microsoftの靴下を訴える」ことはありませんでした
MSDOSの、そして私は彼女がマイクロソフトの
市場全体で、最終的には新しいソフトウェア帝国を構築します
ボーモントのノースエンド。 彼女のプログラミングの努力は削減されました
彼女がボーモントからポートに投げられたとき、悲劇的に短い
1986年夏のアーサー通勤電車。ソースを見つけました
彼女の編み物の単一密度オズボーンディスケットのbwBASICへのコード
バッグを作り、最終的にはすべてをPCにコピーすることができました
ディスケット。 このリリースの少し前に改訂しました。 君
ただし、私自身はプログラマーではなく歴史家であることを知っておく必要があります。

9.コミュニケーション:

Eメール: [メール保護]

1993 年 10 月 11 日 BWベーシック(1)

onworks.netサービスを使用してオンラインでbwbasicを使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

  • 1
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player は無料のメディア プレーヤーです。
    ソフトウェア、WMP および VLC に基づく部分。 の
    プレーヤーはミニマリスト スタイルで、
    XNUMX を超えるテーマ カラー、および
    B ...
    AstrOrzPlayer をダウンロード
  • 2
    モビスタート
    モビスタート
    Kodi Movistar + TV es un ADDON para XBMC/
    Kodi que 許可ディスポンナー デ ウン
    IPTV のロス サービスの復号化機能
    モビスター インテグラド エン ウノ デ ロス
    メディアセンターマ...
    movistartv のダウンロード
  • 3
    Code :: Blocks
    Code :: Blocks
    Code::Blocks は無料のオープンソースです。
    クロスプラットフォームの C、C++、および Fortran IDE
    最も厳しいニーズを満たすように構築されています
    そのユーザーの。 それは非常に設計されています
    伸びる…
    コードをダウンロード::ブロック
  • 4
    中に
    中に
    中または高度な Minecraft インターフェイス
    データ/構造追跡は、
    Minecraft の概要を表示する
    実際に作成することなく、世界。 それ
    できる ...
    ダウンロード
  • 5
    MSYS2
    MSYS2
    MSYS2 はツールのコレクションであり、
    を提供するライブラリ
    使いやすい建築環境、
    ネイティブ Windows のインストールと実行
    ソフトウェア。 それは...
    MSYS2 をダウンロード
  • 6
    libjpeg-ターボ
    libjpeg-ターボ
    libjpeg-turbo は JPEG 画像コーデックです
    SIMD 命令 (MMX、SSE2、
    NEON、AltiVec) によるベースラインの加速
    JPEG の圧縮と解凍
    x86、x8...
    libjpeg-turbo のダウンロード
  • 詳細»

Linuxコマンド

Ad