TEIMSI
Plataforma del desarrollador de textos programados
Inicio|Utilidades|Foro|Documentación

Indice de contenido -> Capítulo 10 - Funciones para conversión de variables


A continuación se describe el uso de las siguientes funciones predeterminadas en TEIMSI:

1)- binstrpack

2)- binstrunpack

3)- floatpack

4)- floatunpack

5)- longpack

6)- longunpack

7)- parsefloat

8)- parseint

9)- parsestr

10)- copyof

11)- iftrue




binstrpack

La función "binstrpack", convierte una cadena en otra ocho veces más grande que contiene la representación de cada bit que compone los bytes de la original. Los caracteres de la cadena devuelta podrán ser sólo de dos valores: chr(0) y chr(1), los cuales tienen código ascii 0 y 1 respectivamente.


Sintaxis
binstrpack(cadena)
 

Parámetros
cadena
Variable tipo cadena de TEIMSI.
 

Valor devuelto
cadena
Variable tipo cadena de TEIMSI.
 

Ejemplo:



	//	Lo siguiente muestra la cadena "00000000000100000000000000000100", que representan los bytes (0,0,0,0,0,1,0,0, 0,0,0,0,0,0,1,0), esto se debe a que " "=chr(32)= 00100000 en binario y chr(64)=01000000 en binario, escribiendo en notación hexadecimal los caracteres chr(0) y chr(1) del valor de cada bit de los caracteres chr(32) y chr(64) pegados, se obtiene la cadena exhibida.
	
		alert(strtohex(binstrpack(" @")))


Ver también <<binstrunpack>>, <<strtohex>>


Volver arriba

binstrunpack

La función "binstrunpack", recibe una cadena de longitud múltipla de ocho que tiene sólo caracteres chr(0) y chr(1) (los cuales tienen código ascii 0 y 1 respectivamente) y la convierte en una cadena de la octava parte de su tamaño que tiene los bytes cuyos bits valen lo que representan los bytes de la cadena de entrada. En otras palabras, realiza la tarea inversa a la función "binstrpack".


Sintaxis
binstrunpack(cadena)
 

Parámetros
cadena
Variable tipo cadena de TEIMSI.
 

Valor devuelto
cadena
Variable tipo cadena de TEIMSI.
 

Ejemplo:



	//	Lo siguiente muestra la cadena "[>" ,  "[" = chr(91), ">" = chr(62):  Observamos que 91 = 01011011 en binario  y  62 = 00111110 en binario, 
	
	var uarr=array(1,1,0,1,1,0,1,0,  0,1,1,1,1,1,0,0)
	var binstr=""
	for(var t=0;t<count(uarr);t++){
		binstr+=chr(uarr[t]);
	}
	alert(  binstrunpack(binstr)  )



Ver también <<binstrpack>>, <<strtohex>>


Volver arriba

floatpack

La función "floatpack", convierte una variable con un número de coma flotante de precisión doble en una cadena de ocho bytes cuya información representa el número original. Se puede obtener el número original aplicando a la cadena resultante la función "floatunpack".


Sintaxis
floatpack(numero_decimal)
 

Parámetros
numero_decimal
Variable tipo número de coma flotante de TEIMSI.
 

Valor devuelto
cadena
Variable tipo cadena de longitud de ocho bytes.
 

Ejemplo:


	
	var numero= 10.46
	var cadena8bytes = floatpack(numero)
	alert("Longitud de la cadena obtenida = " + len(cadena8bytes) +" bytes.")	//	Muestra que tiene 8 bytes de longitud.


Ver también <<floatunpack>>, <<longpack>>, <<longunpack>>


Volver arriba

floatunpack

La función "floatunpack", realiza la conversión inversa a la realizada por la función "floatpack".


Sintaxis
floatunpack(cadena_de_8_bytes)
 

Parámetros
cadena
Variable tipo cadena de longitud de ocho bytes generada con la función "floatpack".
 

Valor devuelto
numero_decimal
Variable tipo número de coma flotante de TEIMSI.
 

Ejemplo:


	
	var numero= 10.46
	var cadena8bytes = floatpack(numero)
	var numero_original = floatunpack(cadena8bytes)
	alert("Número original = " + numero_original)


Ver también <<floatpack>>, <<longpack>>, <<longunpack>>


Volver arriba

longpack

La función "longpack", convierte una variable con número entero de 32 bits de TEIMSI, en una cadena de cuatro bytes cuya información representa el número original. Se puede obtener el número original aplicando a la cadena resultante la función "longunpack".


Sintaxis
longpack(numero_entero)
 

Parámetros
numero_entero
Variable tipo número entero de TEIMSI.
 

Valor devuelto
cadena
Variable tipo cadena de longitud de cuatro bytes.
 

Ejemplo:


	
	var numero= 10123
	var cadena4bytes = longpack(numero)
	alert("Longitud de la cadena obtenida = " + len(cadena4bytes) +" bytes.")	//	Muestra que tiene 4 bytes de longitud.


Ver también <<floatpack>>, <<floatunpack>>, <<longunpack>>


Volver arriba

longunpack

La función "longunpack", realiza la conversión inversa a la realizada por la función "longpack".


Sintaxis
longunpack(cadena_de_4_bytes)
 

Parámetros
cadena
Variable tipo cadena de longitud de cuatro bytes generada con la función "longpack".
 

Valor devuelto
numero_entero
Variable tipo número entero de 32 bits de TEIMSI.
 

Ejemplo:


	
	var numero= 10123
	var cadena4bytes = longpack(numero)
	var numero_original = longunpack(cadena4bytes)

	alert("Número original = " + numero_original)



Ver también <<floatpack>>, <<floatunpack>>, <<longpack>>


Volver arriba

parsefloat

La función "parsefloat", intenta convertir una cadena que representa a un número, en una variable tipo número de precisión doble de TEIMSI.


Sintaxis
parsefloat(cadena_que_representa_un_número)
 

Parámetros
cadena_que_representa_un_número
Variable tipo cadena que contiene al número.
 

Valor devuelto
numero_decimal
Variable tipo número de coma flotante de TEIMSI.
 

Ejemplo:


	
	var cad1="1.3", cad2="2.4"

	alert(cad1+ " + " + cad2+ " = " + (parsefloat(cad1)+parsefloat(cad2))  )	//	Muestra la suma de 1.3+2.4 = 3.7 (o un valor suficientemente cercano).



Ver también <<parseint>>, <<parsestr>>, <<ron>>, <<number_type>>


Volver arriba

parseint

La función "parseint", intenta convertir una cadena que representa a un número entero, en una variable tipo número entero de 32 bits de TEIMSI.


Sintaxis
parseint(cadena_que_representa_un_entero)
 

Parámetros
cadena_que_representa_un_número
Variable tipo cadena que contiene al número.
 

Valor devuelto
numero_entero
Variable tipo número de coma flotante de TEIMSI.
 

Ejemplo:


	
	var cad1="23", cad2="11"

	alert(cad1+ " + " + cad2+ " = " + (parseint(cad1)+parseint(cad2))  )	//	Muestra el resultado: 34.

	//	"parseint" soporta enteros de 32 bits en sistemas binario y hexadecimal.

	alert(parseint("11001y"))		//	Muestra el entero 25, porque es equivalente al número 11001 en el sistema numérico binario.

	alert(parseint("100h"))		//	Muestra el entero 256, porque es equivalente al número 100 en el sistema numérico hexadecimal.



Ver también <<parsefloat>>, <<parsestr>>, <<number_type>>


Volver arriba

parsestr

La función "parsestr", convierte una variable de TEIMSI en una variable tipo cadena de TEIMSI.


Sintaxis
parsestr(variable_TEIMSI)
 

Parámetros
variable_TEIMSI
Variable de TEIMSI.
 

Valor devuelto
cadena
Variable tipo cadena de TEIMSI.
 

Ejemplo:


	
	var incognita= parsestr(345)

	alert("La variable \"incognita\" tiene una cadena = " + (itype(incognita)==_sysstr)  );


	var incognita2= parsestr(true)

	alert("La variable \"incognita2\" tiene una cadena = " + (itype(incognita2)==_sysstr)  );

	alert("incognita2="+incognita2);



Ver también <<parsefloat>>, <<parsestr>>, <<itype>>, <<Variables predefinidas>>


Volver arriba

copyof

La función "copyof", devuelve una copia de una variable. Cumple la misma función de la declaración establecer valor (con el signo de igual "="). Sirve para ciertas funciones que no admiten cadenas estáticas como parámetro.


Sintaxis
copyof(variable_TEIMSI)
 

Parámetros
variable_TEIMSI
Variable de TEIMSI.
 

Valor devuelto
variable_TEIMSI
Variable de TEIMSI.
 

Ejemplo:



	alert(copyof("Hola!"))


Ver también <<parsestr>>


Volver arriba

iftrue

La función "iftrue", recibe tres parámetros donde el primero es un booleano que decide si la función devolverá el segundo parametro o el tercero.


Sintaxis
iftrue(Booleano, variable_TEIMSI1, variable_TEIMSI2)
 

Parámetros
Booleano
Variable de TEIMSI tipo booleano.
 
variable_TEIMSI1
Variable de TEIMSI.
 
variable_TEIMSI2
Variable de TEIMSI.
 

Valor devuelto
variable_TEIMSI
Variable de TEIMSI que puede ser el segundo parámetro o el tercer parámetro.
 

Ejemplo:



	alert(iftrue(5>3, "5 es mayor a 3", "5 es menor o igual a 3"))


Ver también <<copyof>>


Volver arriba