php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #13218 Problema con n?meros binarios
Submitted: 2001-09-08 23:03 UTC Modified: 2001-09-09 05:39 UTC
From: manuel at correo dot udep dot edu dot pe Assigned:
Status: Not a bug Package: *Math Functions
PHP Version: 4.0.4pl1 OS: Red Hat Linux 7.1
Private report: No CVE-ID: None
 [2001-09-08 23:03 UTC] manuel at correo dot udep dot edu dot pe
Intentaba hacer un trabajo con n?meros binarios, primero 
me puse a probar que tan bueno era php con el tratamiento 
de los b?narios dado que no existe ning?n tipo de dato 
byte, y me di cuenta del siguiente error: no puede hacer 
bien un AND a dos n?meros y mucho menos negarlos el 
siguiente c?digo es el que prob? (una y otra vez) y 
siempre me daba el mismo error:

// Inicio del c?digo
$num1 = 10101011;
$num2 = 10000101;

$num11 = base_convert($num1,2,10);
$num22 = base_convert($num2,2,10);

$num3 = $num11 & $num22;
$num4 = ~ $num3;
echo "$num11<br>$num22<br>$num3<br>$num4";
// Fin del c?digo

Al correr este c?digo me di? como resultado lo siguiente:

171
133
131
???

La primera y segunda l?nea son los n?meros binarios 
convertidos a decimal, esto es correcto.

La tercera l?nea me deber?a haber dado como resultado:
171 AND 133 = 129, lo cual se puede corroborar en 
cualquier calculadora, por lo tanto es incorrecto!!!.

La cuarta l?nea debi? haber resultado de negar 131 (que ya 
de por s? es err?neo), y debi? salir:
~ 131 = 1111100
y como ven me bota una varible de tipo string sin 
significado alguno.

Ver?n que el c?digo es completamente sencillo y no hay 
lugar a complicaciones.

Datos Adicionales:

Computadora Pentium III 800MHz
128 Mb RAM
30 GB HD

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-09-09 05:39 UTC] derick@php.net
Please report bugs in English > bogus

Derick
 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Tue Sep 22 07:01:23 2020 UTC