GARANTIR DESCONTO

Fórum Ajuda com XOR #342968

25/06/2007

0

ola pessoal,

estou tendo um problema para fazer um XOR...o problema é o seguinte:

o XOR ate funciona, mas nao retorna o resultado q eu tenho aqui, eu nao sei se ta faltando converter alguma variavel mas eu estou usando o seguinte codigo q peguei aqui no forum:

var
  I: Integer;
  S1: string;
  S2: string;
begin
  S1 := ´CASA´;
  S2 := ´RISO´;
  for I := 1 to Length(S1) do
    S1[I] := Chr(Ord(S1[I]) xor Ord(S2[I]));
end;



o XOR é entre esses valores em hexa:

BA0AD9327F58EAF2 e 0512101000000000 e o resultado deve ser BF18C9227F58EAF2


se alguem q ja sabe bem como trabalhar com XOR puder me eu agradeco muito...obrigado


Tap_pedroso

Tap_pedroso

Responder

Posts

25/06/2007

Massuda

Para fazer o xor entre os números BA0AD9327F58EAF2 e 0512101000000000 NÃO use as strings ´BA0AD9327F58EAF2´ e ´0512101000000000´ pois não são a mesma coisa. Nesse caso, as strings são apenas representações textuais dos números.

O correto é usar as strings...

#$BA + $0A + $D9 + $32 + $7F + $58 + $EA + $F2
$05 + $12 + $10 + $10 + $00 + $00 + $00 + $00

...e daí fazer o xor como você fez.

Dependendo do formato dos seus dados, pode nem ser necessário tratar os dados como strings.


Responder

Gostei + 0

25/06/2007

Tap_pedroso

obrigado massuda, vou tentar fazer isso.


Responder

Gostei + 0

25/06/2007

Tap_pedroso

eu preciso continuar usando o ORD massuda?


Responder

Gostei + 0

25/06/2007

Massuda

eu preciso continuar usando o ORD
Sim.


Responder

Gostei + 0

25/06/2007

Tap_pedroso

deu certo massuda...valew :wink:


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar