Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2016.03.13;
Скачать: CL | DM;

Вниз

hex 2 bin   Найти похожие ветки 

 
Дмитрий С ©   (2015-06-30 15:25) [0]

Кто короче?

Написал такую функцию, которая преобразует два символа образующих HEX код в соответствующий байт:

byte hex2byte(char *a) {
return (((a[0]&15)+((a[0]&16)?0:9)) << 4) | ((a[1]&15)+((a[1]&16)?0:9));
}

Предлагаю найти способ сделать еще короче/быстрее/элегантнее.

Контроль ошибок не требуется.


 
Dimka Maslov ©   (2015-06-30 15:32) [1]

atoi - короче уже не будет.


 
Inovet ©   (2015-06-30 15:37) [2]

Изучи библиотеки, там есть несколько вариантов под разные ситуации.


 
Kilkennycat ©   (2015-06-30 15:44) [3]


> Предлагаю найти способ

а зачем?


 
brother ©   (2015-06-30 16:35) [4]

разводка на слабо... не интересно...


 
virex(home) ©   (2015-06-30 18:20) [5]

>Дмитрий С ©   (30.06.15 15:25) [0]

а на дельфи?


 
RWolf ©   (2015-06-30 18:33) [6]

b := StrToInt("$" + a);


 
Дмитрий С ©   (2015-06-30 18:57) [7]

Я помню какой-то код до 3х строчек асма в итоге сократили. Вполне интересная задача!


 
virex(home) ©   (2015-06-30 19:03) [8]

>RWolf ©   (30.06.15 18:33) [6]
> b := StrToInt("$" + a);


а без использования встроенных функций?


 
Kilkennycat ©   (2015-06-30 21:00) [9]


> какой-то код до 3х строчек асма в итоге сократили. Вполне
> интересная задача!

да. я тож какой-то фильм смотрел, очень интересный.

а если серьезно, то сам подумай, что можно уложить в три строчки асма, и что в этом интересного.

еще серьезней: ты про асм для моего любимого st7fox говоришь?


 
Rouse_ ©   (2015-07-01 19:57) [10]


> Дмитрий С ©   (30.06.15 18:57) [7]
> Я помню какой-то код до 3х строчек асма в итоге сократили.
>  Вполне интересная задача!

Посидел я поэксперементировал, в три строчки никак не влажу (даже если неявный эффект от AAS использовать для чара в диапазоне 0-9).
Нукась покажи что за три строчки асма?


 
Дмитрий С ©   (2015-07-01 20:34) [11]


> Нукась покажи что за три строчки асма?

Это я про другую задачу. Твою же кажется. И твой же ответ был с тремя строками.
Тут хотя бы половину формулы рассчитать в три строки.


 
Юрий Зотов ©   (2015-07-02 00:02) [12]

> Дмитрий С ©   (30.06.15 15:25)

> два символа образующих HEX код в соответствующий байт:
> Предлагаю найти способ сделать еще короче/быстрее/элегантнее.


Нет проблем. И даже без всяких функций: #15#10

Это именно два символа. Или число FA.



Страницы: 1 вся ветка

Текущий архив: 2016.03.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.006 c
15-1435660178
Dimka Maslov
2015-06-30 13:29
2016.03.13
Как эта штука называется


3-1307534034
vstory
2011-06-08 15:53
2016.03.13
получить record с помощью TOracleQuery


2-1408972087
DQ
2014-08-25 17:08
2016.03.13
Перехват и подмена файлов при скачивании


15-1432399742
Юрий Зотов
2015-05-23 19:49
2016.03.13
Быстрый поиск комбинации строк в массиве


15-1435667122
Дмитрий С
2015-06-30 15:25
2016.03.13
hex 2 bin