Código de Ensamblador - Desplazar caracter por la pantalla

Desplazar caracter por la pantallagráfica de visualizaciones


Ensamblador

estrellaestrellaestrellaestrellaestrella(3)
Publicado el 26 de Agosto del 2002 por Carlos Arango
23.952 visualizaciones desde el 26 de Agosto del 2002. Una media de 35 por semana
Código que solicita un carácter y permite moverlo por la pantalla con las flechas de desplazamiento. Para compilar en Turbo Assembler.

Versión 1
estrellaestrellaestrellaestrellaestrella(3)

Publicado el 26 de Agosto del 2002gráfica de visualizaciones de la versión: Versión 1
23.953 visualizaciones desde el 26 de Agosto del 2002. Una media de 35 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
;despues de que lo haya compilado en turbo assembler y tenga el archivo
;.obj, en la linea de comandos haga esto
;c:\borlandc\bin>tlink  "nombre".obj/tdc
;en este caso es cursor.obj
;C:\borlandc\bin>tlink cursor.obj/tdc
; "/tdc" significa que el programa es .com y no .exe
 
 
PROG SEGMENT PARA PUBLIC 'CODE'
     ASSUME cs:PROG,ss:PROG,ds:PROG
     ORG 0100h
programa:
     jmp codigo
car    DB 0
pox    DB 0
poy    DB 0
xa     DB 0
ya     DB 0
aviso DB 'Escriba un caracter y muevalo con las flechas: ','$'
codigo:
   mov  ah,02h
   mov  bh,00h
   mov  dh,5
   mov  dl,5
   int  10h
   mov  ah,9
   mov  dx,OFFSET aviso
   int  21h
   mov  ah,01h
   int  21h
   mov  car,al
   mov  ah,03h
   mov  bh,00h
   int  10h
   mov  pox,ch
   mov  poy,dh
   dec  pox
   mov  ah,05h
   mov  al,01h
   int  10h
bucle:
   mov  ah,02h
   mov  bh,01h
   mov  dh,ya
   mov  dl,xa
   int  10h
   mov  ah,02h
   mov  dl,32
   int  21h
   mov  ah,02h
   mov  bh,01h
   mov  dh,poy
   mov  dl,pox
   int  10h
   mov  ah,02h
   mov  dl,car
   int  21h
   mov  ah,02h
   mov  bh,01h
   mov  dh,poy
   mov  dl,pox
   int  10h
   mov  xa,dl
   mov  ya,dh
   mov  ah,00h
   int  16h
   cmp  ah,75
   jnz  noleft
   dec  pox
   jmp  bucle
noleft:
   cmp  ah,72
   jnz  nodown
   dec  poy
   jmp  bucle
nodown:
   cmp  ah,77
   jnz  noright
   inc  pox
   jmp  bucle
noright:
   cmp  ah,80
   jnz  noup
   inc  poy
   jmp  bucle
noup:
   cmp  al,27
   jz   fin
   jmp  bucle
fin:
   mov  ah,4ch
   mov  al,00h
   int  21h
 
PROG ENDS
     END programa



Comentarios sobre la versión: Versión 1 (3)

pedro
26 de Octubre del 2008
estrellaestrellaestrellaestrellaestrella
muy bien
Responder
caifanforever
25 de Marzo del 2012
estrellaestrellaestrellaestrellaestrella
tiene alguna falla por que solo se visualiza el cursor y no el caracter, pero buen aporte, con minimos cambios funciono
Responder
wilfred
07 de Junio del 2016
estrellaestrellaestrellaestrellaestrella
GRACIAS!!!
Me hicistes la tarea XD
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s289