Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: bin2hex
 
 автор: lionhs   (10.11.2007 в 18:40)   письмо автору
 
 


<?
   extract
($_GET);
   
extract($_POST);
echo 
"<font color='red'><b><h1>bin: $bin</font></b></h1>";
$bin2 bin2hex($bin);
echo 
"<font color='green'<b><h1>hex-bin: $bin2</b></h1>";
$bin3 hexdec($bin2);
$bin4 decbin($bin3);
echo 
"<font color='blue'><b><h1>hex-dec: $bin4</b></h1>";
?>


Файл с формой, в нём ввожу 1, жму отправить. вылезает такое

bin: 1
hex-bin: 31
hex-dec: 110001


Ввожу единицу, должно быть hex-bin: 1 а он пишет 31.

   
 
 автор: sim5   (10.11.2007 в 19:06)   письмо автору
 
   для: lionhs   (10.11.2007 в 18:40)
 

Все правильно пишет:
1DEC -> HEX = 31
31HEX -> DEC = 49
49 DEC (31HEX) -> BIN = 0011 0001

   
 
 автор: Lionhs   (10.11.2007 в 19:51)   письмо автору
 
   для: sim5   (10.11.2007 в 19:06)
 

Ну как же? В любой системе счисление (в нашем случае hex (16-и-ричная)) 1 = 1. То есть пусть вычислит мне 1. Должен написать 1...


<?
   extract
($_GET);
   
extract($_POST);
echo 
"<font color='red'><b><h1>bin: $bin</font></b></h1>";
$bin2 bin2hex($bin);
echo 
"<font color='green'<b><h1>hex-bin: $bin2</b></h1>";
?>


Прикрепил картинку....

   
 
 автор: sim5   (10.11.2007 в 19:58)   письмо автору
 
   для: Lionhs   (10.11.2007 в 19:51)
 

Читайте лучше мануал:
bin2hex(str) - возвращает ASCII-строку, содержащую 16-ричное представление str. Конвертация выполняется побайтно, начиная с самого высокого разряда.

   
 
 автор: Lionhs   (10.11.2007 в 20:09)   письмо автору
 
   для: sim5   (10.11.2007 в 19:58)
 

Хорошо, тогда как же мне получить нормальные значения? Ну, человеческие? :)

   
 
 автор: sim5   (10.11.2007 в 20:14)   письмо автору
 
   для: Lionhs   (10.11.2007 в 20:09)
 

Значение чего - единицы? Ну приобразовывайте тогда ее, что же вы получив ее ASCII строковое представление, уже это строку преобразовываете дальше.

   
 
 автор: Lionhs   (10.11.2007 в 20:25)   письмо автору
 
   для: sim5   (10.11.2007 в 20:14)
 

Не приложу ума как это сделать. Да и скрипт громоздским получается. Может через функции...

   
 
 автор: sim5   (10.11.2007 в 20:32)   письмо автору
 
   для: Lionhs   (10.11.2007 в 20:25)
 

Не знаю как сделать, потому как не знаю чего вы хотите сделать.

   
 
 автор: Lionhs   (10.11.2007 в 20:38)   письмо автору
 
   для: sim5   (10.11.2007 в 20:32)
 

bin: 1
hex-bin: 31


Сейчас так. А нужно так:

bin: 1
hex-bin: 1


Ещё пример:

bin: 123456
hex-bin: 313233343536


А нужно так:

bin: 123456
hex-bin: 1E240

   
 
 автор: sim5   (10.11.2007 в 20:43)   письмо автору
 
   для: Lionhs   (10.11.2007 в 20:38)
 

Вы хотите получить шестнадцатеричное представление числа (судя по последнему)? А почему тогда hex to bin?

   
 
 автор: Lionhs   (10.11.2007 в 20:45)   письмо автору
 
   для: sim5   (10.11.2007 в 20:43)
 

Опечатки.... Но суть Вы поняли :)

   
 
 автор: sim5   (10.11.2007 в 20:51)   письмо автору
 
   для: Lionhs   (10.11.2007 в 20:45)
 

Нет не понял, что вы хотите с преобразованиями сделать, но DEC to HEX:


<?
$bin 
123456;
$bin2 dechex($bin); 
echo 
"dec to hex: $bin2";
?>

   
 
 автор: Lionhs   (10.11.2007 в 21:54)   письмо автору
 
   для: sim5   (10.11.2007 в 20:51)
 

ПОпробую объяснить ещё раз:

Я хочу преобразовывать из обычных строк в 16-иричную систему так, чтобы после того как я ввёду 133007 (обычная строка) получилось 0203A8 (16-иричная строка), из 123456 (обычная строка) получилось 1е240 (16-иричная строка).

Думаю, теперь ясно :(

*Хочу получить представление не только числа, но и целой строки, то есть строки, состоящую не только из цифр...

   
 
 автор: sim5   (11.11.2007 в 05:16)   письмо автору
 
   для: Lionhs   (10.11.2007 в 21:54)
 


<?
$bin 
'10';
echo 
strtoupper(dechex($bin)).'<br>';

$bin 'A';
echo 
dechex($bin).'<br>';
echo 
dechex(ord($bin));

   
 
 автор: Lionhs   (11.11.2007 в 12:27)   письмо автору
 
   для: sim5   (11.11.2007 в 05:16)
 

Спасибо

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования