¡La publicación original (mismo contenido) ha sido bloqueada! ¡Lo siento chicos! Señorita Song, ¡abra el original!
Conjunto de instrucciones MCS-51 (comentarios en inglés)
Si hay omisiones o errores en la publicación, critíquelos y corríjalos a tiempo para evitar engañar a los verdaderos "novatos".
Divididos en cinco categorías según su función:
(1) Instrucciones de transferencia de datos (7 mnemónicos)
MOV: transfiere datos internos del registro RAM y datos especiales de registro de función SFR;
MOVC (Código móvil) lee la transferencia de datos de la tabla de datos de la memoria del programa;
Transferencia de datos desde MOVX (RAM externa móvil) a la RAM externa;
XCH (intercambio) intercambio de bytes;
XCHD (intercambio de dígitos bajos) intercambio de mordiscos bajos
Empuje hacia la pila
POP (pop desde la pila); pila) sale de la pila;
(2) Instrucciones de operación aritmética (8 mnemónicos)
ADD (suma) suma;
ADDC (suma con acarreo) ) suma con acarreo;
SUBB (resta con préstamo) resta con préstamo;
Da (ajuste decimal) ajuste decimal
INC (incremento) más 1;
DEC (decremento menos 1;
MUL (multiplicación, multiplicación) multiplicación;
DIV (división, Divide) división;
(3) Instrucciones de operación lógica (10 mnemónicos)
ANL (lógica Y) Y lógico;
ORL (lógica O) O lógico
XRL ( Lógica XOR) XOR lógico;
CLR (Borrar) claro
CPL (código de complemento) inverso
RL (girar a la izquierda) se mueve hacia la izquierda cíclicamente;
Rlc (gira hacia la izquierda a través de la bandera de acarreo) se mueve hacia la izquierda con el ciclo de acarreo;
RR (rota hacia la derecha) realiza un ciclo hacia la derecha; /p>
Rrc (gira hacia la derecha a través del indicador de acarreo) se mueve hacia la derecha con el ciclo de acarreo;
SWAP (swap) los 4 bits bajos se intercambian con los 4 bits altos;
p>
(4) Instrucción de transferencia de control (17 mnemónico)
ACALL (llamada de subrutina absoluta) La subrutina se llama de forma absoluta;
LCALL (llamada de subrutina larga) llamada larga de subrutina;
RET (retorno de subrutina) retorno de subrutina;
RETI (retorno de interrupción) retorno de interrupción
SJMP (salto corto) pase corto <; /p>
AJMP (salto absoluto) transferencia absoluta;
LJMP (salto de longitud) pase largo
CJNE (si no es igual, compara y salta) si no es igual, shift;
DJNZ (si no es cero, entonces disminuye y salta) después de restar 1, no es 0, luego transfiere a;
Si el resultado de JZ (salta si es cero) es 0, entonces transfiera;
Si el resultado de JNZ (saltar si no es cero) no es 0, entonces transfiera;
JC (saltar si la bandera de acarreo está activada) salte si hay un acarreo;
JNC (saltar si no hay acarreo) salto sin acarreo
Si JB (establecido, entonces si el bit JNB (saltar si no está establecido) es 1, bifurca;
Cuando el bit JNB (saltar si no está configurado) es 0, bifurca;
Si JBC (saltar si está configurado), si el bit de borrado) es 1, la transferencia se borra;
NOP (sin operación) sin operación;
(5) instrucciones de operación de bits (1 mnemotécnico)
Establezca el bit SETB (establecido) en 1.
La próxima vez me tomaré el tiempo para explicar el uso de cada comando con mis propias palabras (comprensión personal) y luego lo acobardaré como referencia. Al mismo tiempo, también espero que las gambas "liberan" más cosas buenas de alta calidad (incluidas experiencias de aprendizaje), preferiblemente de forma sistemática. Dé un ejemplo a mi tipo de camarón y lidere el camino, para que los verdaderos entusiastas "novatos" de los microcontroladores puedan evitar desvíos. ¡Creo que en este momento nuestros principiantes en microcontroladores tienen la misma voz! Como dice el refrán, sólo un tonto que tiene cuidado ganará algo.
Nosotros, Xiami, si encuentras algo mientras estudias, ¡publícalo como un ejercicio!
¡Cooperad entre nosotros!