whileループの小さなステップの操作セマンティクスで状態が変更されないのはなぜですか?
通常、whileループの構造的操作セマンティクス表現では、プログラムの状態は変化しません。 (whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(while \> B \> do \>S, \sigma) \rightarrow (if \>B \> then \>S; (while \> B \> do \>S) \> else \> SKIP, \sigma) 私にとって、これは直感的ではありません。状態が変化しない場合(つまり、メモリのステータスが同じままである場合)、は引き続きtrueであり、プログラムは終了しません。BBB このルールで州が変わらない理由を誰か説明できますか?