Autor Tema: PROBLEMAS CON LOS CONDICIONALES  (Leído 1313 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gefedo

  • PIC10
  • *
  • Mensajes: 2
PROBLEMAS CON LOS CONDICIONALES
« en: 11 de Marzo de 2006, 08:47:00 »
HOLA A TODOS:
SUCEDE QUE SOY PRINCIPIANTE ESN ESTO DE PROGRAMAR EN MPLAB PERO TENGO LA LOGICA, ENTONCES NOSE MUIY BIEN COMO ES LA SINTAXIS NECESARIA PARA HACER UNA RUTINA QUE ME COMPTARE ES DECI POR EJEMPLO

IF NUM1 =10
ENTONCES VAYA A TAL LINEA
SI NO
ENTONCES VAYA A OTRA LINEA
FIN

PERO EN CODIGO DE ASSEMBLER

OTRA COSA QUE QUIRO SABER ES SI DEFINO UNA VARIABLE COMO DECIMAL COMO HAGO PARA CAMBIARLE EL VALOR

MUCHAS GRACIAS COMUNIDAD DE MIARROBA

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: PROBLEMAS CON LOS CONDICIONALES
« Respuesta #1 en: 11 de Marzo de 2006, 09:13:00 »
Buenass!!!bueno en c es facil:
La sentencia if seria algo asi:
Codigo:

     if (NUM1 == VALOR)
           {
                haz lo que tengas que hacer;
           }
     else{
               haz lo otro;
            }



Para cambiar el tipo a una variable primero debes definirla, algo asi:
Codigo:

         int valor;    /// defino una variable llamada valor de tipo entero



Para cambiarle el tipo asi:
Codigo:

        (float)valor=lo_que_sea;    ///ahora la variable valor es de tipo float




Suerte!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado gefedo

  • PIC10
  • *
  • Mensajes: 2
RE: PROBLEMAS CON LOS CONDICIONALES
« Respuesta #2 en: 11 de Marzo de 2006, 09:34:00 »
tE ENTIENDO ESO LO QUE PASA ES QUE ESTOY PROGRAMANDO EN ASSEMBLER ENTONCES QUIERO SABER COMO HASCER ESO PERO DESDE ASSEMBLER

Desconectado Y@el

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 415
RE: PROBLEMAS CON LOS CONDICIONALES
« Respuesta #3 en: 11 de Marzo de 2006, 10:23:00 »
suponiendo que el dato se llama dato1
Si no me equivoco seria:

Codigo:

bcf STATUS,Z ;Borro Flag Z, de registro STATUS
movlw .10 ; Muevo literal 10 a W
subwf dato1,w ; Le resto sato1-W... si son iguales entonces flag Z=1
btfss STATUS,Z ;Comparo si Z=1, si es asi Salta
GOTO NO_ESIGUAL
GOTO ES_IGUAL



Aver si no me equivocado asi debe ser

Nos vemos y suerte