(二十)运算指令
一、概念
算术指令用于对两个操作数栈上的值进行某种特定运算,并把结果重新存入到操作栈顶。大体
上运算指令可以分为两种:对整型数据进行运算的指令与对浮点型数据进行运算的指令,无论是那
种算术指令,都是使用 Java 虚拟机的数字类型的。数据没有直接支持 byte、short、char 和
boolean 类型的算术指令,对于这些数据的运算,都是使用操作 int 类型的指令。
整数与浮点数的算术指令在溢出和被零除的时候也有各自不同的行为,所有的算术指令包括:
- Java 虚拟机没有明确规定整型数据溢出的情况,但是规定了在处理整型数据时,只有除法指
令(idiv 和 ldiv)以及求余指令(irem 和 lrem)出现除数为零时会导致虚拟机抛出异常,如
果发生了这种情况,虚拟机将会抛出 ArithmeitcException 异常。