dioscuri.module.cpu
Class Instruction_AAD_Ib

java.lang.Object
  extended by dioscuri.module.cpu.Instruction_AAD_Ib
All Implemented Interfaces:
Instruction

public class Instruction_AAD_Ib
extends java.lang.Object
implements Instruction

Intel opcode D5
ASCII adjust AX before division.
Adjust two unpacked BCD digits so a division operation on result yields correct unpacked BCD value
Flags modified: SF, ZF, PF


Constructor Summary
Instruction_AAD_Ib()
          Class constructor
Instruction_AAD_Ib(CPU processor)
          Class constructor specifying processor reference
 
Method Summary
 void execute()
          Adjust two unpacked BCD digits so a division operation on result yields correct unpacked BCD value.
Set AL register to (AL + (10 * AH)), clear AH register.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Instruction_AAD_Ib

public Instruction_AAD_Ib()
Class constructor


Instruction_AAD_Ib

public Instruction_AAD_Ib(CPU processor)
Class constructor specifying processor reference

Parameters:
processor - Reference to CPU class
Method Detail

execute

public void execute()
Adjust two unpacked BCD digits so a division operation on result yields correct unpacked BCD value.
Set AL register to (AL + (10 * AH)), clear AH register. AX is then equal to binary equivalent of original unpacked two-digit (base 10) number.
The generalized version adjusts two unpacked digits of any number base (defined by imm8); for example, 08H for octal, 0AH for decimal, or 0CH for base 12.

Specified by:
execute in interface Instruction