SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: iori2029 en Miércoles 15 de Septiembre de 2004, 18:24

Título: No Acepta Assmbler
Publicado por: iori2029 en Miércoles 15 de Septiembre de 2004, 18:24
:devil:  Hola, tengo una pequeña duda, el compilador que uso Tc 2.0(creo) No me acpeta sentencias en ensamblador:

por ejemplo:

asm mov BX,AX

Me manda un error.
Gracias de antemano.Bye :devil:
Título: Re: No Acepta Assmbler
Publicado por: JuanK en Sábado 18 de Septiembre de 2004, 07:58
para ese compilador la sintaxis para el codigo asm seria:
Código: Text
  1.  
  2. asm
  3. {
  4.   mov BX,AX
  5. }
  6.  
  7.  
Título: Re: No Acepta Assmbler
Publicado por: iori2029 en Lunes 20 de Septiembre de 2004, 18:34
Mira disculpa por responder tan tarde,El problema no es ese,
De hecho la sintaxis la iba a postear asi(es que este teclado de este ciber no tiene las malditas llaves o corchetes y no me acuerdo del codigo ascii para ponerlas), aunque lo ponga de la manera que sugieres me manda error de que no permite ese tipo de sentencias o algo asi, poniendo
asm
(llave)
mov BX,AX( o cualquier otra instruccion)
(llave).

Me manda el error, queria incluir assambler para optimizar unas rutinas para modo 13h(la clasica de setcolor,efectos fade retrazado de pantalla etc).

Gracias de antemano
Título: Re: No Acepta Assmbler
Publicado por: JuanK en Martes 21 de Septiembre de 2004, 05:36
y cual se supone que es el famoso error?
Título: Re: No Acepta Assmbler
Publicado por: iori2029 en Jueves 23 de Septiembre de 2004, 18:14
El error es not allowed assambly sentences( o algo asi) ;)
Título: Re: No Acepta Assmbler
Publicado por: Enko en Miércoles 29 de Septiembre de 2004, 17:06
De cualqueier manera estoy seguro que el Turbo C++ 3.x si acepta el AMS. Como vi que tienes el 2.x te convendria conseguir el 3.x que no es muy dificil.
Título: Re: No Acepta Assmbler
Publicado por: RadicalEd en Miércoles 29 de Septiembre de 2004, 18:44
Hola chicos de solocodigo, yo tambien estoy con el mismo problema pero trabajo con Dev-C++ apenas estoy iniciandome en C y quisiera su ayuda con este codigo que esta mal.
Código: Text
  1.  
  2. #include <stdio.h>
  3. #include <conio.h>
  4. main()
  5. {
  6.  void cur_xy(unsigned char y,unsigned char x);
  7.  unsigned char fila,col;
  8.  fila=23;
  9.  col=5;
  10.  cur_xy(fila,col);
  11.  printf("Pulse para continuar");
  12.  getch();
  13. }
  14.  void cur_xy(unsigned char y,unsigned char x)
  15.  {
  16.   asm
  17.   {
  18.    mov dl, x
  19.    cmp dl, 0
  20.    jl fin
  21.    cmp dl, 79
  22.    jg fin
  23.   
  24.    mov dh,x
  25.    cmp dh, 0
  26.    jl fin
  27.    cmp dh, 24
  28.    jg fin
  29.   
  30.    mov bh, 0
  31.    mov ah, 2
  32.    int 10h
  33.    fin: nop
  34.   }    
  35.  }
  36.  
  37.  
PERDON YA ENCONTRE EL PROBLEMA
En Dev-C++ el asm se declara asi:
[/color]
Código: Text
  1.  
  2. int AdrIO;
  3. static char ValIO;
  4.  
  5. void MyFunction(..........)
  6. {
  7. __asm("mov _AdrIO, %dx")&#59; // cargando registro 16 bits
  8. __asm("mov _ValIO, %al")&#59; // cargando registro 8 bits
  9. __asm("mov %ax,%dx")&#59; // AX --> DX
  10. }
  11.  
  12.  
Título: Re: No Acepta Assmbler
Publicado por: iori2029 en Jueves 30 de Septiembre de 2004, 18:15
Si creo que mejor cambio de compilador(vencido por una maquina :unsure: )
Ademas que ta mas bonito el entorno del turbo c++.Gracias a los que respondieron. :D