Fórum Converte Binário em texto #222928
28/03/2004
0
Olá,
tenho uma sequencia em binário (com 8 bits) e precisava saber se o delphi tem alguma função que leia essa sequência e retorne qual o caracter (ou letra) correspondente. Será que alguém pode me ajudar?
Muito obrigada.
tenho uma sequencia em binário (com 8 bits) e precisava saber se o delphi tem alguma função que leia essa sequência e retorne qual o caracter (ou letra) correspondente. Será que alguém pode me ajudar?
Muito obrigada.
Meleniepp
Curtir tópico
+ 0
Responder
Posts
28/03/2004
Beppe
Olá,
tenho uma sequencia em binário (com 8 bits) e precisava saber se o delphi tem alguma função que leia essa sequência e retorne qual o caracter (ou letra) correspondente. Será que alguém pode me ajudar?
Muito obrigada.
Acho que seria Chr, né?
var B: Byte; Ch: Char; begin B := 65; Ch := Chr(B); ShowMessage(Ch); end;
Responder
Gostei + 0
28/03/2004
Aroldo Zanela
Colega,
Existem várias formas de se implementar isso, neste exemplo, o método Execute contém a implementação da rotina:
Criação da classe:
Implementação dos métodos:
Utilizando no formulário:
A propósito, não esqueça de declarar Math na lista de uses para poder utilizar a função Power (Potência).
Obs: Os testes acima podem ser confirmados aqui (veja no rodapé da página): http://www.terra.com.br/matematica/arq1-24.htm
Existem várias formas de se implementar isso, neste exemplo, o método Execute contém a implementação da rotina:
Criação da classe:
TNumerosBase = Class Binario: String; Inteiro: Int64; Caracter: Char; procedure Clear; procedure Execute; end;
Implementação dos métodos:
procedure TNumerosBase.Clear; begin Binario := ´´; Inteiro := 0; Caracter := Char(32); end; procedure TNumerosBase.Execute; var nI: integer; nValor: Double; begin nValor:=0; for nI:= Length(Binario) downto 1 do if Binario[nI] = ´1´ then nValor := nValor + Power(2,Length(Binario)-nI); Inteiro := Trunc(nValor); Caracter := Chr(Inteiro); end;
Utilizando no formulário:
procedure TForm1.Button1Click(Sender: TObject); begin With TNumerosBase.Create do begin Binario := ´1100100´; Execute; ShowMessage( Caracter + #13 + IntToStr(Inteiro)); Binario := ´11010´; Execute; ShowMessage( Caracter + 13 + IntToStr(Inteiro)); Binario := ´1001´; Execute; ShowMessage( Caracter + 13 + IntToStr(Inteiro)); Binario := ´11100001´; Execute; ShowMessage( Caracter + 13 + IntToStr(Inteiro)); Free; end; end;
A propósito, não esqueça de declarar Math na lista de uses para poder utilizar a função Power (Potência).
Obs: Os testes acima podem ser confirmados aqui (veja no rodapé da página): http://www.terra.com.br/matematica/arq1-24.htm
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)