Annotation of ADD_ver_10/IA16-nemos.isa, revision 1.1
1.1 ! rico 1: # FICHERO DE ARQUITECTURA DEL REPERTORIO DE INSTRUCCIONES IA16
! 2: #
! 3: # NEMÓNICOS
! 4: #
! 5: # RevisiÓn de 30/09/05
! 6: # Cada línea no puede tener más de 128 caracteres
! 7: #
! 8: # Información:
! 9: # nemónico
! 10: # -t (tipo)
! 11: # -1 (modo operando 1 (destino) explícito)
! 12: # -2 (modo operando 2 (fuente) explícito)
! 13: # -e (implícitos escritos)
! 14: # -l (implícitos leídos)
! 15: #
! 16: # tipo:
! 17: # 0 -> transferencia
! 18: # 1 -> aritmética
! 19: # 2 -> lógica
! 20: # 3 -> salto incondicional
! 21: # 4 -> salto condicional
! 22: # 5 -> prefijo
! 23: # 6 -> prefijo segmento
! 24: # 7 -> cadenas
! 25: # 8 -> control
! 26: # 100 -> sin tipo
! 27: #
! 28: # modos: 0 -> leído 1 -> escrito 2 -> leído y escrito 3 -> no existe
! 29: #
! 30: # listado impl. escritos: implícito_escrito[:implícito_escrito]
! 31: # listado impl. leídos: implícito_leído[:implícito_leído]
! 32: #
! 33: # [categoría]
! 34: # instrucciones
! 35: #
! 36: # Obligatoriamente la 1ª línea con información debe ser el número de registros
! 37: # Número de registros:
! 38: 99
! 39: #
! 40: #
! 41: # [TRANSFERENCIA]
! 42: IN -t 0 -1 1 -2 0 -e -l
! 43: LAHF -t 0 -1 3 -2 3 -l SF:ZF:AF:PF:CF -e AH
! 44: LDS -t 0 -1 1 -2 0 -e DS -l
! 45: LEA -t 0 -1 1 -2 0 -e -l
! 46: LES -t 0 -1 1 -2 0 -e ES -l
! 47: MOV -t 0 -1 1 -2 0 -e -l
! 48: OUT -t 0 -1 0 -2 0 -e -l
! 49: POP -t 0 -1 1 -2 3 -e SP -l SP
! 50: POPF -t 0 -1 3 -2 3 -e SP:OF:DF:IF:TF:SF:ZF:AF:PF:CF -l SP
! 51: PUSH -t 0 -1 0 -2 3 -e SP -l SP
! 52: PUSHF -t 0 -1 3 -2 3 -l SP:OF:DF:IF:TF:SF:ZF:AF:PF:CF -e SP
! 53: SAHF -t 0 -1 3 -2 3 -e SF:ZF:AF:PF:CF -l AH
! 54: XCHG -t 0 -1 2 -2 2 -e -l
! 55: XLAT -t 0 -1 3 -2 3 -l BX:AL -e AL
! 56: # [PROCESO]
! 57: # [ARITMETICAS]
! 58: AAA -t 1 -1 3 -2 3 -l AF:AX -e AF:CF:AX
! 59: AAD -t 1 -1 3 -2 3 -l AX -e SF:ZF:PF:AX
! 60: AAM -t 1 -1 3 -2 3 -l AL -e SF:ZF:PF:AX
! 61: AAS -t 1 -1 3 -2 3 -e AF:CF:AX -l AX:AF
! 62: ADC -t 1 -1 2 -2 0 -l CF -e OF:SF:ZF:AF:PF:CF
! 63: ADD -t 1 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 64: CBW -t 1 -1 2 -2 3 -l AL -e AX
! 65: CMP -t 1 -1 0 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 66: CWD -t 1 -1 2 -2 3 -l AX -e AX:DX
! 67: DAA -t 1 -1 3 -2 3 -l AL:AF:CF -e OF:SF:ZF:AF:PF:CF:AL
! 68: DAS -t 1 -1 3 -2 3 -l AL:AF:CF -e SF:ZF:AF:PF:CF:AL
! 69: DEC -t 1 -1 2 -2 3 -e OF:SF:ZF:AF:PF -l
! 70: DIV -t 1 -1 2 -2 3 -l DX:AX -e OF:SF:ZF:AF:PF:CF:AX:DX
! 71: IDIV -t 1 -1 2 -2 3 -l DX:AX -e OF:SF:ZF:AF:PF:CF:AX:DX
! 72: IMUL -t 1 -1 2 -2 3 -l AX -e OF:SF:ZF:AF:PF:CF:DX:AX
! 73: INC -t 1 -1 2 -2 3 -e OF:SF:ZF:AF:PF -l
! 74: MUL -t 1 -1 2 -2 3 -l AX -e OF:SF:ZF:AF:PF:CF:DX:AX
! 75: NEG -t 1 -1 2 -2 3 -e OF:SF:ZF:AF:PF:CF -l
! 76: SBB -t 1 -1 2 -2 0 -l CF -e OF:SF:ZF:AF:PF:CF
! 77: SUB -t 1 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 78: # [LOGICAS]
! 79: AND -t 2 -1 2 -2 0 -e OF:SF:ZF:PF:CF -l
! 80: NOT -t 2 -1 2 -2 3 -e -l
! 81: OR -t 2 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 82: RCL -t 2 -1 2 -2 0 -e OF:CF -l
! 83: RCR -t 2 -1 2 -2 0 -e OF:CF -l
! 84: ROL -t 2 -1 2 -2 0 -e OF:CF -l
! 85: ROR -t 2 -1 2 -2 0 -e OF:CF -l
! 86: SHL/SAL -t 2 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 87: SAR -t 2 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 88: SHR -t 2 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 89: TEST -t 2 -1 0 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 90: XOR -t 2 -1 2 -2 0 -e OF:SF:ZF:AF:PF:CF -l
! 91: # [BIFURCACIONES]
! 92: CALL -t 3 -1 0 -2 3 -l CS:IP:SS:SP -e PILA:CS:IP:SP
! 93: JMP -t 3 -1 0 -2 3 -e CS:IP -l
! 94: JB/JNAE -t 4 -1 0 -2 3 -l CF -e IP
! 95: JBE/JNA -t 4 -1 0 -2 3 -l CF:ZF -e IP
! 96: JCXZ -t 4 -1 0 -2 3 -l CX -e IP
! 97: JE/JZ -t 4 -1 0 -2 3 -l ZF -e IP
! 98: JL/JNGE -t 4 -1 0 -2 3 -l SF:OF -e IP
! 99: JLE/JNG -t 4 -1 0 -2 3 -l ZF:SF:OF -e IP
! 100: JNB/JAE -t 4 -1 0 -2 3 -l CF -e IP
! 101: JNBE/JA -t 4 -1 0 -2 3 -l CF:ZF -e IP
! 102: JNE/JNZ -t 4 -1 0 -2 3 -l ZF -e IP
! 103: JNL/JGE -t 4 -1 0 -2 3 -l SF:OF -e IP
! 104: JNLE/JG -t 4 -1 0 -2 3 -l ZF:SF:OF -e IP
! 105: JNO -t 4 -1 0 -2 3 -l OF -e IP
! 106: JNP/JPO -t 4 -1 0 -2 3 -l PF -e IP
! 107: JNS -t 4 -1 0 -2 3 -l SF -e IP
! 108: JO -t 4 -1 0 -2 3 -l OF -e IP
! 109: JP/JPE -t 4 -1 0 -2 3 -l PF -e IP
! 110: JS -t 4 -1 0 -2 3 -l SF -e IP
! 111: LOOP -t 4 -1 0 -2 3 -l CX -e CX:IP
! 112: LOOPNZ/LOOPNE -t 4 -1 0 -2 3 -l CX:ZF -e CX:IP
! 113: LOOPZ/LOOPE -t 4 -1 0 -2 3 -l CX:ZF -e CX:IP
! 114: RET -t 3 -1 0 -2 3 -l PILA:SS:SP -e CS:IP:SP
! 115: RETF -t 3 -1 0 -2 3 -l PILA:SS:SP -e CS:IP:SP
! 116: # [CADENAS]
! 117: CMPS -t 7 -1 3 -2 3 -l DS:SI:ES:DI:DF -e OF:SF:ZF:AF:PF:CF:SI:DI
! 118: LODS -t 7 -1 3 -2 3 -l DS:SI:DF -e AX:SI
! 119: MOVS -t 7 -1 3 -2 3 -l DS:SI:ES:DI:DF -e SI:DI
! 120: REP -t 5 -1 3 -2 3 -l CX -e CX:IP
! 121: REPZ/REPE -t 5 -1 3 -2 3 -l CX:ZF -e CX:IP
! 122: REPNZ/REPNE -t 5 -1 3 -2 3 -l CX:ZF -e CX:IP
! 123: SCAS -t 7 -1 3 -2 3 -l AX:ES:DI:DF -e OF:SF:ZF:AF:PF:CF:DI
! 124: STOS -t 7 -1 3 -2 3 -l AX:ES:DI:DF -e DI
! 125: # [OTRAS]
! 126: INT -t 3 -1 0 -2 3 -l AX:CS:IP:SS:SP:OF:DF:IF:TF:SF:ZF:AF:PF:CF -e AX:DX:PILA
! 127: INT 3 -t 3 -1 0 -2 3 -l CS:IP:SS:SP:OF:DF:IF:TF:SF:ZF:AF:PF:CF -e PILA
! 128: INTO -t 4 -1 0 -2 3 -l OF -e
! 129: IRET -t 3 -1 3 -2 3 -l PILA:SS:SP -e CS:IP:SP:OF:DF:IF:TF:SF:ZF:AF:PF:CF
! 130: CLC -t 8 -1 3 -2 3 -e CF -l
! 131: CLD -t 8 -1 3 -2 3 -e DF -l
! 132: CLI -t 8 -1 3 -2 3 -e IF -l
! 133: CMC -t 8 -1 3 -2 3 -e CF -l CF
! 134: ESC -t 8 -1 0 -2 3 -e -l
! 135: HLT -t 8 -1 3 -2 3 -e -l
! 136: LOCK -t 5 -1 3 -2 3 -e -l
! 137: NOP -t 8 -1 3 -2 3 -e -l
! 138: STC -t 8 -1 3 -2 3 -e CF -l
! 139: STD -t 8 -1 3 -2 3 -e DF -l
! 140: STI -t 8 -1 3 -2 3 -e IF -l
! 141: WAIT -t 8 -1 3 -2 3 -e -l
! 142: CS -t 6 -1 3 -2 3 -e -l
! 143: DS -t 6 -1 3 -2 3 -e -l
! 144: ES -t 6 -1 3 -2 3 -e -l
! 145: SS -t 6 -1 3 -2 3 -e -l
! 146: (086)? -t 100 -1 3 -2 3 -e -l
! 147:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>