Smile BASIC では、FALSE を 0 とするのは、他の言語と同じですが、TRUE を 0 以外と仕て居るのは、BASIC の伝統を継承し、互換性等に配慮した物と推察します。併し、原理は同じなので 8 ビットで説明しますが、00000000 と NOT の関係に有るのは 11111111 で有り、此れは、論理的(Logical)に観れば 255 で有り、算術的(Arithmetic)に観れば -1 と成り、1 では有りません。 従って、Visual C# や Java では、while(1) と謂う記述は、条件式をブール型(bool)に収束出来ない為、例外が発生します。因みに、Visual Basic でも、Option Strict On とすると、Integer を暗黙的に Boolean に変換出来ない為、While CBool(1) と修正する様に促されます(続く)