Arquitectura de los computadoresRoberto CerdáRubén Albiach
Arquitectura del 68000 MotorolaTiene 8 registros de datos de 32 bits:D0-D7: Registros de datosA0-A6: Registros de direccionesSSP, USP: son los punteros de pila del modo supervisor y del modo usuario respectivamente.PC: Contador de programa, es un puntero a la posición de la memoria con la siguiente instrucción a ejecutar.SR: Registro de estado, su composición por bits es la siguiente:T		S	I2	I1 	I0	X  N Z  V  CBits aritméticos (XNZVC): Bits que se activan según el resultado de la última operación aritmética.Mascara de interrupciones(I2 I1 I0):Sólo pueden entrar las interrupciónes de nivel menor que la máscara.Bit de modo supervisor(S): 1 si estamos en modo supervisor.Bit de modo traza(T): Para cuando se depuran programas y se va ejecutando paso a paso.
Arquitectura del 68000 MotorolaBus de datos:Cada registro de datos tiene 32 bitsPodremos representar DWORD es decir dos palabras de 16 bitsBus de direcciones:Tiene 24 bits.24/8=3 bytes220 =1MB*25= 225-1-1= 22323 bits de capacidad máxima.
Arquitectura del 68000 MotorolaNúmero y tipo de instrucciones:En total tiene 56 instrucciones.Operaciones de movimiento de datos: MOVE, MOVEA, MOVEM, MOVEQ, EXG, LEA, PEA , SWAP, LINK, Y UNLINK.Operaciones de aritmética entera: ADD, ADDA, ADDI, ADDQ, ADDX, CLR, CMP, CMPA, CMPI, CMPM, DIVU, DIVS, EXT, MULU, MULS,NEG, NEGX, SUB, SUBA, SUBI, SUBW , SUBX y CMP.Operaciones lógicas: AND, ANDI, EOR, EORI, OR, ORI, NOT y TST.Operaciones en BCD:ABCD, NBCD y SBCD.Operaciones de desplazamiento y rotación: ASL, ASR, LSL, LSR, ROL, ROR, ROXL, ROXR y SWAP.Operaciones de maipulación de bits: BTST, BSET, BCLR, BCHG.Operaciones de control de programa: BRA, BSR, JMP, JSR, RTR, RTS y NOP.Operaciones de control del sistema: RESET, RTE, STOP, TRAP, TRAPV, CHK.
Arquitectura del 8086 intelRegistros(nombre y numero):Registros de Propósito General Registro AX: El registro AX es el registro acumulador.Registro BX: El registro BX es el registro base, y es el único registro de propósito general que puede ser un índice para direccionamiento indexado.Registro CX: El registro CX es conocido como el registro contador. Contiene un valor para controlar el número de veces que un ciclo se repite o los cambios que acurren.Registro DX: El registro DX es el registro de datos.
Arquitectura del 8086 intelRegistros Índice Registro SI: El registro índice fuente de 16 bits es requerido por algunas operaciones con cadenas de caracteres. El SI está asociado con el registro DS.Registro DI: El registro índice destino también es requerido por algunas operaciones con cadenas de caracteres. El DI está asociado con el registro ES.Registros Apuntadores   Proporciona un valor de desplazamiento que se refiere a la palabra actual que   está siendo procesada en la pila. El sistema maneja de manera automática este registro.Registro BP: El apuntador base de 16 bits facilita la referencia de parámetros, los cuales son datos y direcciones transmitidos vía la pila.
Arquitectura del 8086 intelRegistros de BanderasEs un registro de 16 Bits de los cuales nueve sirven para indicar el estado actual de la máquina y el resultado del procesamiento. Los bits de las banderas son las siguientes:OF (overflow, desbordamiento)DF (dirección)IF (interrupción)TF (trampa)SF (signo)ZF (cero)AF (acarreo auxiliar)PF (paridad)CF (acarreo)
Arquitectura del 8086 intelRegistro segmentosRegistro CS: El DOS almacena la dirección inicial del segmento de código de un programa en el registro CS.Registro DS: La dirección inicial de un segmento de datos de programa es almacenada en el registro DS.Registro SS: El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos.Registro ES: Algunas operaciones con cadenas de caracteres utilizan el registro extra de segmento para manejar el direccionamiento de memoria.
Arquitectura del 8086 intelRegistro Apuntador de Instrucciones-El registro IP de 16 bits contiene el desplazamiento de dirección de la siguiente instrucción que se ejecuta.-El numero de Bits con los que trabaja es de16 Bits.-En el 8088 se comparten los pines 9 al 16 entre el bus de direcciones y de datos, y los pines 35 al 38 entre el bus de direcciones y el de control.-Bus de direcciones (20 bits, es decir, 220 direcciones = 1 MB de direccionamiento)-El 8088  tiene un rango de entrada/salida de 64 Kbytes.-El 8088 presenta cuatro registros de segmento (CS, DS, ES y SS), que se pueden establecer a partir de los registros índice.
SUM1 DW 100H: direccionamiento directo.MOV AX, 123H: direccionamiento inmediato.MOV AX, SUM1: direccionamiento directo.MOV BX 200H: direccionamiento inmediato.ADD [BX], AX: direccionamiento inmediato.
Tipos de instruccionesInstrucciones de transferencia de datos: MOV.Instrucciones aritmético-lógicas:Instrucciones aritméticas: ADD, ADC, SUB, SBB.Instrucciones lógicas: AND, OR, XOR, NEG, NOT.Instrucciones de comparación: CMP.Instrucciones de incremento/decremento: INC, DEC.Instrucciones de manejo de la Pila: PUSH, POP, PUSHF, POPF.Instrucciones de cambio de flujo de programa:Instrucciones de salto incondicional: JMP.Instrucciones de salto condicional: JZ, JNZ, JS, JNS, JC, JNC, JO, JNO.Instrucciones asociadas a subrutinas: CALL, RET.Instrucciones de gestión de las Interrupciones: INT, IRET, STI, CLI.Instrucciones de control: NOP, HLT.Instrucciones de entrada/salida: IN, OUT.
CuestionesLa 5 y la 6 no son diferentes ya que esta moviendo a AX valores de diferentes direcciones.La 7 no es igual que la 8 y 9 ya que escriben en direcciones diferentes.En la instrucción 10 usa el modo de direccionameinto directo y en la 14 esto [BX] es que esta usando modo de direccionamiento indirecto.ADD BX,AX  Sumaría BX a AX y lo guardaría en BX.	ADD [BX],AX  Suma el contenido de la dirección BX a AX.

Arquitectura De Los Computadore

  • 1.
    Arquitectura de loscomputadoresRoberto CerdáRubén Albiach
  • 2.
    Arquitectura del 68000MotorolaTiene 8 registros de datos de 32 bits:D0-D7: Registros de datosA0-A6: Registros de direccionesSSP, USP: son los punteros de pila del modo supervisor y del modo usuario respectivamente.PC: Contador de programa, es un puntero a la posición de la memoria con la siguiente instrucción a ejecutar.SR: Registro de estado, su composición por bits es la siguiente:T S I2 I1 I0 X N Z V CBits aritméticos (XNZVC): Bits que se activan según el resultado de la última operación aritmética.Mascara de interrupciones(I2 I1 I0):Sólo pueden entrar las interrupciónes de nivel menor que la máscara.Bit de modo supervisor(S): 1 si estamos en modo supervisor.Bit de modo traza(T): Para cuando se depuran programas y se va ejecutando paso a paso.
  • 3.
    Arquitectura del 68000MotorolaBus de datos:Cada registro de datos tiene 32 bitsPodremos representar DWORD es decir dos palabras de 16 bitsBus de direcciones:Tiene 24 bits.24/8=3 bytes220 =1MB*25= 225-1-1= 22323 bits de capacidad máxima.
  • 4.
    Arquitectura del 68000MotorolaNúmero y tipo de instrucciones:En total tiene 56 instrucciones.Operaciones de movimiento de datos: MOVE, MOVEA, MOVEM, MOVEQ, EXG, LEA, PEA , SWAP, LINK, Y UNLINK.Operaciones de aritmética entera: ADD, ADDA, ADDI, ADDQ, ADDX, CLR, CMP, CMPA, CMPI, CMPM, DIVU, DIVS, EXT, MULU, MULS,NEG, NEGX, SUB, SUBA, SUBI, SUBW , SUBX y CMP.Operaciones lógicas: AND, ANDI, EOR, EORI, OR, ORI, NOT y TST.Operaciones en BCD:ABCD, NBCD y SBCD.Operaciones de desplazamiento y rotación: ASL, ASR, LSL, LSR, ROL, ROR, ROXL, ROXR y SWAP.Operaciones de maipulación de bits: BTST, BSET, BCLR, BCHG.Operaciones de control de programa: BRA, BSR, JMP, JSR, RTR, RTS y NOP.Operaciones de control del sistema: RESET, RTE, STOP, TRAP, TRAPV, CHK.
  • 5.
    Arquitectura del 8086intelRegistros(nombre y numero):Registros de Propósito General Registro AX: El registro AX es el registro acumulador.Registro BX: El registro BX es el registro base, y es el único registro de propósito general que puede ser un índice para direccionamiento indexado.Registro CX: El registro CX es conocido como el registro contador. Contiene un valor para controlar el número de veces que un ciclo se repite o los cambios que acurren.Registro DX: El registro DX es el registro de datos.
  • 6.
    Arquitectura del 8086intelRegistros Índice Registro SI: El registro índice fuente de 16 bits es requerido por algunas operaciones con cadenas de caracteres. El SI está asociado con el registro DS.Registro DI: El registro índice destino también es requerido por algunas operaciones con cadenas de caracteres. El DI está asociado con el registro ES.Registros Apuntadores Proporciona un valor de desplazamiento que se refiere a la palabra actual que está siendo procesada en la pila. El sistema maneja de manera automática este registro.Registro BP: El apuntador base de 16 bits facilita la referencia de parámetros, los cuales son datos y direcciones transmitidos vía la pila.
  • 7.
    Arquitectura del 8086intelRegistros de BanderasEs un registro de 16 Bits de los cuales nueve sirven para indicar el estado actual de la máquina y el resultado del procesamiento. Los bits de las banderas son las siguientes:OF (overflow, desbordamiento)DF (dirección)IF (interrupción)TF (trampa)SF (signo)ZF (cero)AF (acarreo auxiliar)PF (paridad)CF (acarreo)
  • 8.
    Arquitectura del 8086intelRegistro segmentosRegistro CS: El DOS almacena la dirección inicial del segmento de código de un programa en el registro CS.Registro DS: La dirección inicial de un segmento de datos de programa es almacenada en el registro DS.Registro SS: El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos.Registro ES: Algunas operaciones con cadenas de caracteres utilizan el registro extra de segmento para manejar el direccionamiento de memoria.
  • 9.
    Arquitectura del 8086intelRegistro Apuntador de Instrucciones-El registro IP de 16 bits contiene el desplazamiento de dirección de la siguiente instrucción que se ejecuta.-El numero de Bits con los que trabaja es de16 Bits.-En el 8088 se comparten los pines 9 al 16 entre el bus de direcciones y de datos, y los pines 35 al 38 entre el bus de direcciones y el de control.-Bus de direcciones (20 bits, es decir, 220 direcciones = 1 MB de direccionamiento)-El 8088 tiene un rango de entrada/salida de 64 Kbytes.-El 8088 presenta cuatro registros de segmento (CS, DS, ES y SS), que se pueden establecer a partir de los registros índice.
  • 10.
    SUM1 DW 100H:direccionamiento directo.MOV AX, 123H: direccionamiento inmediato.MOV AX, SUM1: direccionamiento directo.MOV BX 200H: direccionamiento inmediato.ADD [BX], AX: direccionamiento inmediato.
  • 11.
    Tipos de instruccionesInstruccionesde transferencia de datos: MOV.Instrucciones aritmético-lógicas:Instrucciones aritméticas: ADD, ADC, SUB, SBB.Instrucciones lógicas: AND, OR, XOR, NEG, NOT.Instrucciones de comparación: CMP.Instrucciones de incremento/decremento: INC, DEC.Instrucciones de manejo de la Pila: PUSH, POP, PUSHF, POPF.Instrucciones de cambio de flujo de programa:Instrucciones de salto incondicional: JMP.Instrucciones de salto condicional: JZ, JNZ, JS, JNS, JC, JNC, JO, JNO.Instrucciones asociadas a subrutinas: CALL, RET.Instrucciones de gestión de las Interrupciones: INT, IRET, STI, CLI.Instrucciones de control: NOP, HLT.Instrucciones de entrada/salida: IN, OUT.
  • 12.
    CuestionesLa 5 yla 6 no son diferentes ya que esta moviendo a AX valores de diferentes direcciones.La 7 no es igual que la 8 y 9 ya que escriben en direcciones diferentes.En la instrucción 10 usa el modo de direccionameinto directo y en la 14 esto [BX] es que esta usando modo de direccionamiento indirecto.ADD BX,AX  Sumaría BX a AX y lo guardaría en BX. ADD [BX],AX  Suma el contenido de la dirección BX a AX.