Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INT 10H
; interrupcin BIOS
; Interrupcin de salida a pantalla LEA DX,CADENAC MOV AH,09H INT 21H ; Interrupcin de salida al sistema operativo MOV AX,4C00h ; INT 21h CODIGO ENDS PILA SEGMENT STACK DB 160 DUP(?); separacin de 160 bytes para uso de pila PILA ENDS END INIC . .
DW 0800H
MOV DX,184fh ; posicin final rengln 24, columna 79 INT 10h ;interrupcin de posicin de cursor MOV AH,02H ; funcin 02h MOV BH,00 ; pagina activa n0 MOV DX,0310H ; renglon 3, columna 16 INT 10H ; interrupcin BIOS ;interrupcin de salida a pantalla LEA DX,CADENAB MOV AH,09H INT 21H MOV CX,04H BUCL: MOV MOV INT ADD MOV MOV AH,02H BH,00 DX,POS 10H DX,0206H POS,DX
DB DB DB DB
"UNIVERSIDAD NACIONAL DE TRUJILLO","$" "INGRESE UNA CADENA DE 20 CARACTERES: ","$" "LA CADENA INGRESADA ES: ","$" "LA CADENA INVERTIDA ES: ","$"
CADENA LABEL BYTE TOTAL DB 21 ACTUAL DB ? CADE DB 21 DUP(?) DOLAR DB "$" CADINV DB 21 DUP(?),$ DATOS ENDS CODIGO SEGMENT ASSUME CS:CODIGO, DS:DATOS, SS:PILA INIC: MOV AX,DATOS ; asigna a AX el desplazamiento DATOS MOV DS,AX ; asigna al DS la direccin inicial CALL RECORRE MOV DX,0310H CALL POSICION LEA DX,CADENAB CALL MUESTRA MOV DX,0504H CALL POSICION LEA DX,CADENAC CALL MUESTRA CALL INGRESO MOV DX,0704H CALL POSICION LEA DX,CADENAD CALL MUESTRA LEA DX,CADE CALL MUESTRA ;&&&&&&&&&&&&&&&&&&&&&&&&&&& ;interrupcin de salida al sistema operativo MOV AX,4C00h ;
;interrupcin de salida a pantalla LEA DX,CADENAD MOV AH,09H INT 21H LOOP BUCL MOV AX,4C00h ; INT 21h CODIGO ENDS PILA SEGMENT STACK DB 160 DUP(?); separacin de 160 bytes para uso de pila PILA ENDS END INIC .
INT 21h RECORRE PROC NEAR ;interrupcin de recorrido de pantalla MOV AX,0600h MOV BH,07h ; atributo de color MOV CX,0000h ; posicin inicial MOV DX,184fh INT 10h RET RECORRE ENDP POSICION PROC NEAR ;posicion de cursor, MOV AH,02H MOV BH,00 INT 10H RET POSICION ENDP falta el valor de DX
(nota: solo agregue al programa anterior en el rengln marcado con ;&&&&&&&&&&&&&&&&&&&&&) ;procedimiento que invierte la cadena hacia CADINV MOV DI,20 MOV SI,0 MOV CX,0 MOV CL,ACTUAL SUB CX,1 MOV DI,CX ADD CX,1 INVI: MOV BX,OFFSET CADE MOV AL,[BX+DI] MOV BX,OFFSET CADINV MOV [BX+SI],AL INC SI DEC DI LOOP INVI MOV DX,0B04H CALL POSICION LEA DX,CADENAE CALL MUESTRA LEA DX,CADINV CALL MUESTRA
MUESTRA PROC NEAR ;interrupcin de muestra, MOV AH,09H INT 21H RET MUESTRA ENDP
falta el valor de DX
INGRESO PROC NEAR ;interrupcin de ingreso de cadena a buffer LABEL BYTE MOV AH,0AH LEA DX,CADENA INT 21H RET INGRESO ENDP CODIGO ENDS PILA SEGMENT STACK DB 160 DUP(?); separacin de 160 bytes para uso de pila PILA ENDS END INIC