Trabajo de arquitectura de computadoras
Enviado por ltayj • 22 de Junio de 2014 • 12.912 Palabras (52 Páginas) • 241 Visitas
;
; ** TRABAJO DE ARQUITECTURA DE COMPUTADORAS **
;
;**********************************************************
PAGE 60,132
; PUBLIC NAMEPAR,MAXNLEN,ACTNLEN,TEXTO,MENSA1,MENSA2
; PUBLIC BEGIN,A20LOOP,FIN,A30,B10PRMP,D10INPT,F10CLNM
; PUBLIC BEGIN,B10PRMP,D10INPT,F10CLNM
; PUBLIC F20,Q10CLR,Q20CURS
; PUBLIC Q10CLR,Q20CURS
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; PROGRAMA PARA CONVERTIR CADENAS
TITLE ECO
;--------------------------------------------------------------------
STACKSG SEGMENT PARA STACK 'STACK'
DW 32 DUP (?)
STACKSG ENDS
;--------------------------------------------------------------------
DATASG SEGMENT PARA 'DATA'
CADENA1 LABEL BYTE ;START OF NAME PARAMETER LIST
MAXNLEN DB 11 ;MAX. LENGTH OF NAME
ACTNLEN DB ? ;MRO. CHARS ENTERED
TEXTO DB 13 DUP (' '),'$' ;NAME & DELIMITER
CADENA2 LABEL BYTE
MAXNLEN2 DB 11
ACTNLEN2 DB ?
TEXTO2 DB 13 DUP (' '),'$'
CADENA3 LABEL BYTE
MAXNLEN3 DB 11
ACTNLEN3 DB ?
TEXTO3 DB 13 DUP (' '),'$'
CADENA4 LABEL BYTE
MAXNLEN4 DB 11
ACTNLEN4 DB ?
TEXTO4 DB 13 DUP (' '),'$'
CADENA5 LABEL BYTE
MAXNLEN5 DB 11
ACTNLEN5 DB ?
TEXTO5 DB 13 DUP (' '),'$'
MENSAJE1 DB '* CUANTAS CADENAS DE CARACTERES QUIERE INGRESAR : $'
MENSAJE2 DB '¯ NO ESTA DENTRO DEL RANGO, INTENTE DE NUEVO... $'
MENSAJE3 DB '- INGRESE CADENA :$'
MENSAJE4 DB '* SELECCIONE DE QUE MANERA QUIERE QUE SE MUESTRE EL CODIGO: $'
MENSAJE5 DB '- MOSTRAR EN CODIGO HEXADECIMAL (ASCII) - PRESIONE "A" $'
MENSAJE6 DB '- MOSTRAR EN CODIGO BINARIO (ASCII) - PRESIONE "B" $'
MENSAJE7 DB '- MOSTRAR EN CODIGO HEXADECIMAL (EBCDIC) - PRESIONE "H" $'
MENSAJE72 DB '- MOSTRAR EN CODIGO OCTAL (ASCII) - PRESIONE "O" $'
MENSAJE73 DB ' DIGITE LA LETRA DEL CODIGO: $'
MENSAJE8 DB 'LA OPCION IGRESADA ES INCORRECTA, LEA E INTENTE NUEVAMENTE... $'
MENSAJE9 DB 'USTED A SELECCIONADO ASCII: $'
MENSAJE10 DB 'USTED A SELECCIONADO BINARIO : $'
MENSAJE11 DB 'USTED A SELECCIONADO HEXADECIMAL : $'
MENSAJE12 DB 'USTED A SELECCIONADO OCTAL : $'
MENSAJE13 DB 'PRESIONE EL NUMERO DE CADENA QUE DESEE MOSTRAR: $'
MENSAJE14 DB '1.- $'
MENSAJE15 DB '2.- $'
MENSAJE16 DB '3.- $'
MENSAJE17 DB '4.- $'
MENSAJE18 DB '5.- $'
MENSAJE19 DB 'INGRESE EL NUMERO DE LA CADENA QUE DESEA CONVERTIR: $'
MENSAJE20 DB '¯ OPCION INCORRECTA, INTENTE DE NUEVO $'
MENSAJE21 DB '* ERROR $'
MENSAJE22 DB '* USTED NO HA INGRESADO EL NUMERO DE CADENAS INGRESADAS $'
MENSAJE23 DB '- PRESIONE CUALQUIER TECLA PARA REGRESAR... $'
MENSAJE24 DB ' ¨ DESEA CONTINUAR ? SI(S) NO(N) $'
MENSAJE25 DB ' *ERROR* $'
MENSAJE26 DB '¯ POR FAVOR SOLO INGRESE LAS LETRAS ASIGNADAS A CADA OPCION... $'
MENSAJE30 DB ' *** GRACIAS *** $'
MENSAJE31 DB ' INTEGRANTES: $'
MENSAJE32 DB '- FLORES BORDAIS, JESUS MAXIMO COD: 09190058 $'
MENSAJE33 DB '- GRANDA COLLADO, MANUEL COD: 09190092 $'
MENSAJE34 DB '- HUANCA HONORIO, DENNIS COD: 09190127 $'
MERROREBC DB ' EL SIMBOLO INGRESADO NO ESTA CODIFICADO... $'
MERROREBC1 DB '¯ PARA EL CODIGO EBCDIC SOLO PUEDE INGRESAR VALORES $'
MERROREBC2 DB ' ALFANUMERICOS... $'
DATASG ENDS
;---------------------------------------------------------------------
CODESG SEGMENT PARA 'CODE'
BEGIN PROC FAR
ASSUME CS:CODESG,DS:DATASG,SS:STACKSG,ES:DATASG
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,DATASG
MOV DS,AX
MOV ES,AX
INICIO PROC NEAR
MOV CH,00H
MOV DX,050AH ;PONE EL CURSOR A FILA 00, COLUMNA 00
CALL CURSOR
MOV CL,00
CALL ESCRIBIR
CALL LEER
CALL RANGO
CALL ESTRUCTURA
CALL ELECCION
RET
INICIO ENDP
;------------------------------------------
ESCRIBIR PROC NEAR
LEA DX,MENSAJE1
MOV AH,09H
INT 21H
RET
ESCRIBIR ENDP
;------------------------------------------
LEER PROC NEAR
MOV AH,01H
INT 21H
RET
LEER ENDP
;------------------------------------------
RANGO PROC NEAR
...