Impresion Del Codigo ASCII En Ensamblador
ASCII es un acrónimo de American Standard Code for Information Interchange. Es un convenio adoptado para asignar a cada caracter un valor numérico. Se introdujo durante lo años 60 para la transmisión de datos entre ordenadores. Se trata de un código de 7 bits con capacidad para 128 símbolos que incluyen todos los caracteres alfanuméricos del inglés, con símbolos de puntuación y algunos caracteres de control de la transmisión.
Posteriormente se amplia el código a 8 bits permitiendo 128 símbolos más.
el codigo es el siguiente:
TITLE ACII
stacksg segment para stack 'stack' ; el stack define el segmento de pila
db 64 dup (0) ; el tamaño de la pila es 64 bytes
stacksg ends
datasg segment ; se define un segmento de datos
col db 0 ; filas y columnas inicialisadas con 0
fil db 0
datasg ends
codesg segment ; codigo de segmento donde se programan la instrucciones
assume cs:codesg,ds:datasg,ss:stacksg ;segmento de registro
main proc far ; procedimiento principal
push ds ;empila temporalmente el contenido de segmento de datos
mov ax, datasg
mov ds, ax
limpiar_pantalla: ; etiquetas
mov bh, 07h
mov bh,71h
movcx,0000h
mov dx,184Fh
int 10h
mov cx, 226 ;cx es utilizado como contador es las veces que realizara el ciclo
mov ah,' '
ciclo:
mov ah, 02 ;coloca el cursor
mov dh, fil ; fila comienza con la posicion 0 igual que col ya que son la fila y columna
mov dl, col ;conforme el ciclo aunmenta
mov bh, 0
int 10h
inc fila ;incrementa fila
cmp fila, 20 ;comparacion del valor que se encuentra en fila si este es 20
jne mostrar ;si lo anterior no es igual salta a la etiqueta mostrar
mov fil, 0
add col, 2 ;suma add= suma es decir suma 2 a columna
mostrar:
mov ah,0eh
int 10h
inc al ;incrementa para el siguiente carcater "al”
loop ciclo
cursor:
mov ah, 02
mov dh, 22
mov dl, 0
mov bh, 0
int 10h
fin:
mov ax, 4ch
int 21h ;termina con toda la ejecucion del programa
main endp
codesg ends
end main
end