Problema con ensamblador

#1
Hola,tengo un problemilla en un programa de ensamblador, y es que en la instruccion "CJNE A,1101H,tempmax" (para medir logikamente una temperatura)me sale el warning "value has been truncated to 8 bits" y no se que error puede ser.

A=P1,donde a P1 le viene la salida de un adc del sensor de temperatura y quiero que compare con 1101H.

gracias.
 
#2
Ayuda mucho que aclararas a que ensamblador te refieres y la referencia del micro.

Ahora Si se trata de Maplab (o mpasm) dices que es un warning.... luego no es un error propiamente dicho. No es raro el compilador envie advertencias que no aplican.

Prueba con el simulador a ver que es lo que pasa.

Salu2.
 
#3
te esta diciendo en ingles que el valor de la temperatura supera "desborda" los 8bits (255 decimal ó 11111111 binario) del ancho de instrucción y entonces el programa trunca el resultado para ajustarlo a esos 8bits.

saludos.
 
#4
el micro es el 8051 y el programa es el microvision 1.El caso es que no me deja ejecutarlo,lo linka pero no kompila.
Lo de que lo ajusta a 8 bit es remediable?kiero decir que de que manera consigo kitar el error.
gracias por contestar tan rapido
 
#5
"CJNE A,1101H,tempmax"

estas haciendo una comparacion de un numero directo de 16 bits con el acumulador A, que es de ocho bits. Dice que pues... la comparacion la hara en ocho bits, es decir, solo 01 contra A.

si lo que quieres es meter un numero hexa, y tu quisiste escribir un numero binario entonces tu error es el H del final.
Necesito que me aclares en que sistema esta expresado 1101
 
#7
Un momento. P1 es el puerto 1 donde tienes conectado el ADC. Si haces la lectura de P1, obviamente haces una lectura de 8 bits. Ojo mi chavo!, estudiale bien!

Por lo que veo, tu quieres hacer la comparacion del numero binario 1101, que viene siendo en hexa el numero 0Dh, en decimal es 13, osea, estas mezclando tornillos con manzanas y el assembler te esta diciendo que "NO".

En fin, con los datos que me das, tu solucion es esta. "CJNE A,0Dh,tempmax"

Con esto debe funcionar. Ojo con los sistemas numéricos.
 
Arriba