¿Qué significa CND en el circuito?
1. Descripción general del sistema de enseñanza por computadora
(1) Código de operación de longitud fija de 6 bits, hasta 64 instrucciones. .
(2) Clasificación de las instrucciones ① Según la longitud de la instrucción: hay instrucciones de una sola palabra y de dos palabras ② Según los operandos: hay operandos, operandos simples e instrucciones de doble operando ③ Según el modo de direccionamiento : hay direccionamiento de registro, direccionamiento indirecto de registro, direccionamiento inmediato, direccionamiento de índice, direccionamiento relativo, direccionamiento directo y direccionamiento de pila.
(3) Formato de instrucción 15 10 9 8 7 0
Código de operación de 6 bits Código de condición de 2 bits Número de registro de destino Número de registro de origen
Entrada/ puerto de salida Dirección/desplazamiento relativo de transferencia
Valor inmediato/dirección absoluta/desplazamiento de índice
Código de operación: en los 6 bits más altos, hasta 64 instrucciones.
Código de condición: 2 bits, utilizado como condición de juicio de la instrucción de bifurcación condicional (correspondiente a las palabras de estado C, Z, V, S). Los 8 bits más bajos: diferentes instrucciones tienen diferentes usos.
●Dirección del puerto de entrada o salida
●Desplazamiento relativo de direccionamiento (-128 ~ +127)
●Dividido en dos campos de 4 bits, que indican el número de registro para operandos dobles. 2. Sistema de enseñanza detallado por ordenador.
(1) Según el número de operandos ①Sin instrucción de operando: 11.
NOP instrucción sin operación DI off instrucción de interrupción
Instrucción de pila de palabras de estado PSHF STC posición de acarreo 1 (C←1)
Instrucción de pila de palabras de estado POPF acarreo CLC Posición 0 (C←0).
Instrucción de interrupción de apertura EI
Instrucción de retorno de subrutina RET
Instrucción de retorno de interrupción IRET
Instrucción de código de microinstrucción de carga LDMC
HALT instrucción de parada dinámica ②Instrucción de operando único: Hay dos formatos, ***12.
Formato 1: 15 10987430
El código de operación de 6 bits no requiere el uso de Sr.
Multiplicación sin signo de MUL SR, r0r1 ← r1× Sr.
DIV SR división sin signo, R0 (resto) R1 (cociente) ← r0r1/sr
Formato 2: 15 10987430
Código de operación No se requieren 6 bits Dr.
Instrucción: PUSH DR empuja a DR hacia la pila.
Extraiga el elemento superior de la pila a DR.
INC DR DR DR←DR+1
Diciembre Dr. Dr. ← Dr.-1
No Dr. ← Dr. Dr.
SHL DR DR se desplaza lógicamente hacia la izquierda, el bit más bajo se llena con 0 y el bit más alto se desplaza a C. SHR DR se desplaza lógicamente hacia la derecha, el bit más alto se llena con 0 y el más bajo El bit se desplaza a C. RCL DR y C se giran hacia la izquierda, y C se desplaza al bit más bajo, y el bit más alto se desplaza. El bit lleva c rcr dr y C gira a la derecha, C se desplaza al bit más alto. y el desplazamiento más bajo es c 3 instrucciones de doble operando. Hay dos formatos, * *17.
Formato 1: 15 10987430
OP no utiliza dr Sr.
Descripción: Añadir función DR, SR: dr dr+Sr.
Función ADC DR, SR: dr dr+Sr+C.
Función Sub DR, SR: dr dr-Sr.
Dr.SBB, Función Avanzada: Dr.Dr.
Cmdr, SR Función: dr-Sr.
Prueba DR, función SR: DR y arco tridimensional
o DR, función SR: DR DR o SR
XOR DR, función SR: DR DR xor SR
y funciones DR, SR: DR DR y radianes sólidos
MOV DR, funciones avanzadas: DR Advanced
Funciones MOV DR [avanzadas]: dr [avanzado]
MOV [dr], funciones avanzadas: [dr] avanzado
Formato 2: 15 10987430
OP no utiliza dr Sr.
Datos/ADR/Offset
Datos:ADR inmediato:dirección de memoria
Offset:offset
Descripción: Función:
MOV Recuperación ante desastres, Datos de recuperación ante desastres
MOV Doctor
MOV
MOV Doctor, Bias [SR] Doctor [Bias +SR]
MOV OFFSET [SR], DR [offset+Sr] DR 4 instrucciones de E/S, 1 instrucción de entrada y salida respectivamente.
Formato: 15 10 9 8 7 0
OP sin instrucciones de IO/puerto:
En el puerto R0 [PORT], lea desde el periférico Obtenga un byte en los 8 bits inferiores de R0.
Puerto de salida [PORT] R0 y escribe los datos inferiores de 8 bits de R0 en el periférico.
⑤Instrucciones de transferencia, 3 formatos, 6 instrucciones de transferencia relativas.
Formato 1: 15 109870
Desplazamiento OP CND
Si no se utiliza JR ADR CND, se debe transmitir la dirección ADR, y ADR es la PC original valor + desplazamiento.
JR CND, ADR Cuando se cumplan las condiciones, transfiera a la dirección indicada por ADR, donde ADR es el valor de PC original + desplazamiento. Si no se cumplen las condiciones, se ejecutará secuencialmente.
Instrucción de sucursal que proporciona la dirección de la sucursal a través de un registro general.
Formato 2: 15 10987430
OP CND no utiliza la instrucción SR:
JP SR CND no necesita ir incondicionalmente a la dirección señalada por SR .
JP CND, SR se transferirá a la dirección indicada por SR cuando se cumplan las condiciones, y se ejecutará secuencialmente cuando no se cumplan las condiciones.
Instrucción de bifurcación implementada por dirección absoluta
Formato 3: 15 10987430
Identificador de llamadas, no, no
Mediación de disputas
p>Explicación:
No utilice JP ADR CND, transfiera incondicionalmente a la dirección ADR.
JP CND, ADR se transmitirá a la dirección ADR cuando se cumplan las condiciones y se ejecutará en secuencia cuando no se cumplan las condiciones. ⑥Instrucciones de llamada de subprograma, dos formatos, * * *.
Formato 1: 15 10987430
OP no requiere instrucción SR: CALL SR llama a SR, la subrutina especificada por sp
[SP]<-PC , PC & lt-SR
Formato: 15 10 9 8 7 4 3 0
No, no, no.
Mediación de disputas
Instrucciones:
CALL ADR llama a la subrutina especificada por ADR, sp sp-1.
[SP]Computadora, computadora ADR
Se puede ver que los dos formatos de la instrucción de llamada de subrutina son los mismos que los dos últimos formatos de la instrucción de transferencia incondicional.
(2) Clasificación de funciones implementadas mediante instrucciones
① Instrucciones lógicas: 19 (ver libro de texto P139).
②Comando de transferencia: 12 (ver libro de texto P140).
③Instrucciones de entrada y salida: 2 (ver libro de texto P140).
④Instrucciones de control: 17 (cada instrucción de rama condicional se cuenta como dos).
⑤Otras instrucciones, 3. 3. Programación en lenguaje ensamblador
El lenguaje informático se divide en tres niveles:
①Lenguaje de máquina②Lenguaje ensamblador③Lenguaje de alto nivel
Ejemplos de programas en lenguaje ensamblador:
El ejemplo 1 consiste en diseñar un pequeño programa que utiliza control de frecuencia para generar docenas de caracteres del 0 al 9 en la pantalla del terminal. (Nota: los códigos ASCII de los caracteres 0 ~ 9 son 30H ~ 39H)
A820
Mover R2, 0A; R2 es un contador y el valor inicial se envía a 10.
Mover R0, 30; el valor inicial de R0 se envía al código ASCII ‘0’ 30H.
(824) La puntuación total es 80 puntos; genera los caracteres almacenados en R0, 80 es la dirección del puerto.
R2 Diciembre; resta 1 del contador R2 y establece el indicador de estado.
JR Z, 830; si es 0, se ejecutará en 830; en caso contrario, se ejecutará secuencialmente.
Presione R0; R0 va a la pila para ingresar la palabra de estado del dispositivo externo.
En 81; ingrese la palabra de estado del periférico con la dirección de puerto 81 en R0.
SHR R0R0 lógicamente se desplaza un bit hacia la derecha y el bit más bajo ingresa c.
JP NC, 828; C=0, indica que no está listo, bucle en espera
C=1, ejecución secuencial.
POP R0 El elemento superior de la pila se abre a R0.
Contenido INC R0R0 +1
JP 824 convertido incondicionalmente a 824
(830)RET regresa al programa principal
;