Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Извлечь значение


Страницы:   1 2

Dmitry1987 ©   (2008-06-18 16:49:00) 

Как из 31-битного числа извлечь значение его старшего (31) бита


Anatoly Podgoretsky   (2008-06-18 22:57:00) [1]

> Palladin  (18.06.2008 22:31:21)  [21]

Был такой хитрый Cardinal - Борланд не справился и сделал хитрую позу, мол у нас Cardinal 31 бит, я уже не помню в какой версии они справились и появился нормальный в 32 бита, после ни разу не вспоминали про свое чудо программисткой мысли. По этой же причине у них нет фундаментального dWord - этот тоже был разным в разных версиях, им пришлось придумываеть новое название и получилось не как у людей - байт, ворд, дворд


korneley   (2008-06-18 22:53:00) [2]


> Anatoly Podgoretsky ©   (18.06.08 17:02) [4]
> А ты не смейся,
>  были же у Борланда 31 бит Cardinal и ничего, как то жили,
>  матюгались правда сильно и горькую пили.

Поддержу Palladin-а, не припомню че-то такого, проясните, если не в лом :)))


Anatoly Podgoretsky   (2008-06-18 22:40:00) [3]

> korneley  (18.06.2008 22:17:20)  [20]

Вообще то я на ГАИ намекал. Сейчас там отмалчивается.


Palladin   (2008-06-18 22:31:00) [4]

А кстати, прошу просчения, что перебиваю. Анатоль, а чего там за история про 31битный Cardinal?


korneley   (2008-06-18 22:17:00) [5]


> Anatoly Podgoretsky ©   (18.06.08 22:13) [19]
> ....Сообственно автор исчез, наверно неправильно
> улицу переходил.

Ну, дык, не всё же, автомобилям только воздух загрязнять. Пусть поработают на общество...


Anatoly Podgoretsky   (2008-06-18 22:13:00) [6]


> А так глубоко - "пощупал бит, положи на место" я не рыл
> ;))

А зря.
Сообственно автор исчез, наверно неправильно улицу переходил.
Вопрос как пощапать так и остался подвешеным.


Amoeba   (2008-06-18 21:47:00) [7]

Добавлю свои 5 копеек (ф-ия из QStrings):

function Q_BitTest(P: Pointer; Index: Integer): Boolean;
asm
       BT      [EAX],EDX
       SETC    AL
end;


korneley   (2008-06-18 21:08:00) [8]


> Anatoly Podgoretsky ©   (18.06.08 20:51) [14]
> > korneley  (18.06.2008 19:46:12)  [12]Второе, для этого
> достаточно перечитать вопрос.Но вот что значит "Извлечь
> значение" там нет

Хм... Телепаторы разной системы :)) Я-то как раз "извлечь", понял как узнать состояние бита 0/1, а вот со "старшим" и 31-м заминочка вышла (по этому и два варианта) :))


MBo   (2008-06-18 20:54:00) [9]

>А ты не понял на что он намекает SHL (SHR) бит то надо восстановить.

Не, я про сдвиг не в ту сторону только намекал
А так глубоко - "пощупал бит, положи на место" я не рыл ;))


Anatoly Podgoretsky   (2008-06-18 20:52:00) [10]

> Palladin  (18.06.2008 19:59:13)  [13]

Тоже странно, ведь это даже Борланду удавалось с трудом.


Anatoly Podgoretsky   (2008-06-18 20:51:00) [11]

> korneley  (18.06.2008 19:46:12)  [12]

Второе, для этого достаточно перечитать вопрос.
Но вот что значит "Извлечь значение" там нет


Palladin   (2008-06-18 19:59:00) [12]

Не, ну конечно Palladin, цитированный наклонно, это совсем не тот Palladin, что не склонён :)
Упаси боже, я не смеюсь конечно, просто улыбаюсь парадоксу, :) человек играючи обрабатывающий 31-битовые значения - затрудняется получить состояние 31ого старшего бита.

"О Боже мой" (C) Пипин в интерпретации Гоблина


korneley   (2008-06-18 19:46:00) [13]

(X and $80000000) <> 0Хотя, что автор считает 31-м разрядом - непонятно, может и $40000000, на что сгодится :)


Anatoly Podgoretsky   (2008-06-18 18:51:00) [14]

> Ega23  (18.06.2008 17:15:09)  [9]

А ты не понял на что он намекает SHL (SHR) бит то надо восстановить.


Правильный-Вася   (2008-06-18 17:41:00) [15]


> 31-битного числа

а если ему хватает 5 бит? какое же оно 31-битное?


Ega23   (2008-06-18 17:15:00) [16]

Тьфу-ты, конечно shr.
Очепятка.


MBo   (2008-06-18 17:11:00) [17]

>Это ты намекаешь Ega23?
Угу


Anatoly Podgoretsky   (2008-06-18 17:04:00) [18]

> MBo  (18.06.2008 17:03:05)  [5]

Это ты намекаешь Ega23?


Anatoly Podgoretsky   (2008-06-18 17:03:00) [19]

> Ega23  (18.06.2008 17:00:03)  [3]

А ты уверен, что ему нужно именно в этом виде?
Может ему за это двойку поставят.


MBo   (2008-06-18 17:03:00) [20]

X shr 31


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо