7.3 VMの仕様、パートI / 抄訳
pp.133-134
pushコマンド、popコマンド
push
segment index:
segment[index]の値をスタックにプッシュする。segmentはargument
、local
、static
、constant
、this
、that
のいずれか。indexは、0を含む正の整数。
pop
segment index:
スタックの末尾値をポップして、その値をsegment[index]に格納する。segmentはargument
、local
、static
、constant
、this
、that
、pointer
、temp
のいずれか。indexは、0を含む正の整数。
算術論理演算コマンド
- 算術演算コマンド:
add
、sub
、neg
- 比較演算コマンド:
eq
、gt
、lt
- 論理演算コマンド:
and
、or
、not
演算は、スタックの末尾値に対して、あるいは末尾値とその1つ前の値とに対して実行される。したがってオペランドは明示する必要がない。