Red de conocimiento informático - Conocimiento sistemático - Código fuente del convertidor de ensamblado

Código fuente del convertidor de ensamblado

# incluir ltreg52.h gt

#¿Definición? u8? ¿No firmado? Té

#Definición? u16? ¿No firmado? (Igual que las organizaciones internacionales) Organizaciones internacionales

#Definición? ¿Tamaño de Buf? 0x10

u8? buf[TamañoBuf];

u8? js = 0;

¿No es válido? principal(){

SCON = 0x 80;

PCON = 0x 80

EA = 1

ES = 1;

ACC = buf[0];

TB8 = P;

SBUF = ACC

mientras(1);

}

¿Anulado? ¿TRANI() interrupción? Cuatro

{

TI = 0

js

if(js==BufSize){

ES = 0;

}

En caso contrario{

ACC = buf[js];

TB8 = P;

SBUF = ACC

}

}Por cierto, optimice el código ensamblador.

¿BUF? EQU 0x 50

ORG 0000H

JMPMAIN

ORG 0023H

JMPTRANI

Principalmente:

MOVSCON, #0X80

MOVPCON, #0X80

SETBIA

SETBES

MOVR0, #BUF

MOVA, @R0

MOVC Pass

MOVTB8, C

Moovsbuff

JMP Yuan

Turney :

PUSHPSW

Pushak

Incremento 0

CJNER0, #BUF 0x10, siguiente

JMPTEND

Siguiente: MOVA, @R0

MOVC Yamaguchi

MOVTB8, C

Movsbuff

Licitación:

POPACC

POPPSW

Reti