Definición de Código ASCII en informática

En la programación hay muchos desarrollos que necesitaremos saber que es el código ASCII, porque cuando tenemos que generar ciertos archivos que enviamos de un sistema a otro, o que nos piden en ciertos desarrollos de software debemos cumplir ciertas reglas por ejemplo un layout para alta de usuarios donde debamos ingresar nombres con Ñ, como Ibañez, direcciones donde debamos ingresar Sopeña, España o acentos, no todos los sistemas nos aceptan estos tipos de datos, por lo que necesitamos hacer un proceso de conversión o de eliminación de esos caracteres en nuestra información a enviar.


Para ello hay un estándar que se definió para identificar cada carácter con un número, de manera general eso es el código ASCII.


Ahora de manera oficial que es:


American Standard Code for Information Interchange, Los códigos ASCII representan texto en las computadoras fue hecho por Internet Assigned Numbers Authority . El primer uso comercial del código fué en Telegrafos, La primera definición de este estándar fué en 1963 y la ultima actualización en 1986

Para poder utilizar el código ASCII


Esos símbolos de la tabla ASCII pueden generarlos con su teclado utilizando la tecla ALT + Numero de la tabla por ejemplo:


  • ALT + 64 = @ 
  • ALT + 164 = ñ 
Para mas ejemplo les comparó la siguiente Liga

https://support.office.com/es-es/article/insertar-s%C3%ADmbolos-y-caracteres-ascii-o-unicode-basados-en-el-alfabeto-latino-d13f58d3-7bcb-44a7-a4d5-972ee12e50e0

O también en el mapa de Caracteres de Windows, pueden ver el codigó ASCII


Un ejemplo en un programa Progress 4gl:



lvc-name = REPLACE(lvc-name,CHR(209,SESSION:CPINTERNAL,"ISO8859-1"),"N").
lvc-name = REPLACE(lvc-name,CHR(193,SESSION:CPINTERNAL,"ISO8859-1")
                     ,"A").
lvc-name = REPLACE(lvc-name,CHR(201,SESSION:CPINTERNAL,"ISO8859-1")
                    ,"E").

Aquí tenemos 2 funciones muy importantes

REPLACE: esta instrucción lo que nos permite hacer es cambiar un carácter o grupo de letras por otro(s). Tiene 3 parámetros

  • La variable en donde se va a buscar
  • El campo a buscar
  • El valor por el que va a cambiar


CHR: esta instrucción obtiene el código obtiene el carácter que corresponde a la tabla ASCII, tiene solo un parámetro que es el código correspondiente a la tabla


Como se ve el programa



DEF VAR lvc-name AS CHAR Initial ""   .                                       
DEF VAR lvc-name2 AS CHAR INITIAL "".                                         
lvc-name = "M" + CHR(233) + "xico" .                                         
DISPLAY "Antes" lvc-name FORMAT "X(10)" SKIP.                                 
lvc-name2 =REPLACE(lvc-name,CHR(130),"e").                                   
lvc-name2 = REPLACE(lvc-name,CHR(233,SESSION:CPINTERNAL,"ISO8859-1"),"e").   
lvc-name2 = REPLACE(lvc-name,CHR(201,SESSION:CPINTERNAL,"ISO8859-1"),"e").   
DISPLAY "Desp" lvc-name2   FORMAT "X(30)" SKIP.                               

                                                 

Como se ve la ejecución




Progress 4gl función CHR


Para ver mas detalle de esta función les comparto la liga de la documentación de Progress


Este tipo de instrucciones no solo aplica a Progress, tambíen estan en C#, C++, Python por ejemplo en este ultimo hay librerías que hacen conversión a códigos o a unicode o UTF-8 como por ejemplo BeutifulSoup


Ejemplo en Visual Basic

En Visual Basic, que es el lenguaje de las Macros de Excel, tenemos las instrucciones 
Chr(charcode
ChrB(charcode)
ChrW(charcode)


Mgsbox(Chr(65))

Que cumple el mismo objetivo que la función de Progress que es obtener el texto del código ASCII


Ejemplo en C Sharp o C#


string value = "Ñ";

// Convert the string into a byte[].

byte[] asciiBytes = Encoding.ASCII.GetBytes(value);
foreach(byte b in ASCIIValues) {
    Console.WriteLine(b);
}

Espero que este post les haya gustado y sobretodo les sea de utilidad al momento de hacer sus proyectos, principalmente tendrán que utilizarlo para generar layouts que envíen a otros sistemas.

Saludos amigos programadores, dejen sus comentarios o dudas.
No olvide compartirnos y seguirnos en este blog, en Facebook.


Más ejemplos de PHP



Mas ejemplos de Progress


Comentarios

Entradas más populares de este blog

Ejemplo Macro en Word

Macro de Excel para abrir archivo csv

Graficar funciones en Python con dataframes