FreeBASICが、ソースコードで公開しているから、調べてみるのも良い
MBASIC86がVectorにある。 N88互換のソースコードつきだから、調べるとよろしい。
動くのであれば
そのマシンでできる事なら何やってもOK、なコンテストだったんでしょう
より多くのマシンに対応できるようにすればするほど
地味な事しかできなくなってくるしね
peekやpokeあるやは
>460で試せないやなあ残念ながら
ROM内ルーチンのエントリポイントのアドレスリスト
N-BASICならあるけど、
8086なのかな?
何に使うの?
PC9801のROM呼び出しを使って、何をしたいの?
ROM-BASICの解析をしたいのかな?
98なら88のエミュレータ動くな
まあ86→z80の変換してROMを移植するのは容易じゃないだろうが。
>>648
本体しかないとはモニターがなくて表示できないってこと?
それともシステムディスクとかソフトがないから何もできないってこと? センター試験旧数学U・旧数学Bで、まだ行番号付きのBASICがぎりぎり現役だなw
新課程では削除されてるみたいだし、今年で終わりかな?
0653ナイコンさん2015/11/28(土) 17:36:17.69
10年以上も前か
今年のセンター試験ではついにN88-BASICが消えたな。
0656ナイコンさん2016/02/17(水) 07:48:31.02
=を使った、代入と比較の違い
BASICでは、構文の場所によって代入と比較を区別する。
また、LETを使って明示的に代入を区別する。
MS-BASICの場合は比較の結果を1/0で記録する。
例えば、
IF 2=A THEN PRINT A :'この0=Aは比較
A=5 : PRINT A :'このA=5は代入
N88だと式が真の時は-1だったっけ?
そういえばA=(A=5)はA=A=5と書けるのだろうか
>>657
書けるよ
A=A=5の場合
最初にAが5だったらAは-1に
それ以外は0になる N88-BASICの互換BASIC・・・BASIC/98か。
面白そうだなぁ。
コンパイラ版とか時代を感じる。
a =b +(-1)*(c >0)
大昔これ書いたら教育担当にちょびっとおこらりたw
短く書けて便利なようだけど
わかりづらくはなるよな
0662ナイコンさん2016/06/30(木) 10:02:12.57
機種依存、言語依存する書き方はよろしくないのでは
今までの経験だと学部卒の新入社員はそういうコーディングをしたがる
院卒は if (C > 0) 〜 というごくオーソドックスでわかりやすいコーディングをする
自分のイメージでは逆だったのでちょっと驚いた
組み込み用とかで1バイトでも節約したいなら許すけど、普通のシステムなら直ちに却下だわ
「明日の自分は赤の他人」てことを肝に銘じて、いちいち考え込まずに読み下せるようなコーディングをしろってポリシーは未だに変わらず
こうか
(A式)
if c <= 0 then a=b
if 0 < c then a=b+1
(B式)
a = b - (c > 0)
実務だとこうだな
a = b
if (c > 0) then a=a+1
if c <= 0 then a=b else a=b+1
こんな事、書きたくないな
end if が使えて
if c <= 0
then a=b
else a=b+1
end if
と書けるなら、使ってもいいけど
条件によって
「a=b」 を実行する場合と
「a=b+1」 を実行する場合と、2系統の処理に分岐されるわけでしょ
2系統の処理の頭が縦に並べて記述してる方が
違いを見比べやすくてわかりやすい
>>665
このA式は、言語によっては危険な書き方
FortranやCOBOLだと、1行目の then a=b の後にピリオドがあるかないかで2行目の評価タイミングが変わってくるはず BASICスレでFortranやCOBOLの話を持ち出されても……
>>669
ではA式をBASICで書く場合、
どう書けばよりよいのか例えを挙げてください 0672ナイコンさん2016/07/16(土) 09:37:35.05
>>665のA式はないわ
排他な条件式が2箇所に書いてあるなんてメンテ性悪い 普通にif then elseでええやん
>>668の前者後者は言語仕様とコーディング規則の範囲でお好きなように
then elseが大きく離れるくらい複雑になるならモジュール化
だけど今の時代のあるべき書き方をN88-BASICに求めるのは酷だな 俺は>>666の書き方を推すぜ!
条件式1つだけだから。 0676予言神・鎌田2017/03/07(火) 23:28:02.97
N88-BASICの条件式と論理式を学ぶのに最適な教材:
COM SIGHTのBPL(Battletank Programing Langage)がいいと思う。
IF文を使うと1クロック食われるが、条件式と論理式をうまく組み合わせて使うと、IF文は不要になる(クロック消費ゼロ)。
BAEM 0:ビーム撃たない:クロック消費ゼロ
MOVE 0:移動しない:クロック消費ゼロ
とか、試してできた時は吹いたw
後、スレチだが、ミサイルが44度で撃てることを見つけた時とか。
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
――――
0679ナイコンさん2018/12/04(火) 11:03:32.99
マルチメディア対応BASIC(MS-DOS版 V6.1以降)で
グラフィック画面を縦480ラインにする方法を教えて下さい
COMSIGHTは小学生のころむっちゃほしかったわ
懐かしい…
中学の時、家にpc8801と9801があったからn88basicを勉強しだしたんだよな
何も分からずに厚さが10cm近い仕様書読み出したから、始めは変数?何それ…だった
おおこんなスレがw
俺は仕事でN88BASIC使って事務所理系システムを組んでたなあ。
と、書くと歳がバレちゃうけど。
言語仕様が貧弱だったので、画面入力やソートやグラフ作成やISAMのサブルーチンも自前で作ってた。
若い頃はITドカタ一筋で今はネットワーク系に転向しとります。
今の開発環境はよーわからんw
0684ナイコンさん2022/05/01(日) 13:04:02.96
>>657
N88BASICは0が偽で0以外は真、要するにCと同じ
ちなみにN88互換BASICは-1が真で-1以外は偽 条件式の評価結果はどちらも真が-1
print (1<2)
の結果はN88BASICとN88互換BASICのどちらも-1
if (0) print "a" else print "b"
これはN88BASICでは"b"だけどN88互換BASICでは "a"
0686ナイコンさん2022/05/02(月) 12:41:19.14
こんなのを両方で動かしてみるとよくわかると思う
1000 FOR I=-5 TO 5 STEP 1
1010 PRINT USING "###="; I;:IF I THEN PRINT "TRUE" ELSE PRINT "FALSE"
1020 NEXT I
0687ナイコンさん2022/12/27(火) 15:29:48.40
丁寧な説明ありがとうございます。
0688ナイコンさん2023/08/17(木) 15:57:29.71
いまだにN88-BASIC使っております