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

Вниз

64 битовое число   Найти похожие ветки 

 
ArtemESC ©   (2005-10-09 15:36) [0]

QWord = 0..$FFFFFFFFFFFFFFFF
Будет ли "работать" такая структура с использованием
математических операций.


 
Anatoly Podgoretsky ©   (2005-10-09 15:37) [1]

Будет


 
ArtemESC ©   (2005-10-09 15:43) [2]

>>Anatoly Podgoretsky
А в памяти оно будет как два DWord?


 
Anatoly Podgoretsky ©   (2005-10-09 15:46) [3]

Как сделаешь так и будет. Только какое отношение это имеет к памяти, у тебя вопрос про тип.


 
ArtemESC ©   (2005-10-09 15:46) [4]

И еще вопрос...
Как можно получить его составные части в формате DWord?


 
Anatoly Podgoretsky ©   (2005-10-09 15:51) [5]

Написать новый тип - запись из двух DWord, возможно такой уже описан, посмотри в справке.


 
Anatoly Podgoretsky ©   (2005-10-09 15:52) [6]

Точно, такой уже есть


 
ArtemESC ©   (2005-10-09 15:58) [7]

>>запись из двух DWord
Не уж то записи можно складывать и умножать? [1]


 
Джо ©   (2005-10-09 16:03) [8]


>  [7] ArtemESC ©   (09.10.05 15:58)

Можно. С приведением к элементарному типу, если размеры соответствуют.


 
Джо ©   (2005-10-09 16:05) [9]

Вот демонстрация, хотя и бессмысленная, но иллюстративная.

procedure TForm1.Button1Click(Sender: TObject);
type
 TQWord = record
   Dw1,
   Dw2: DWord;
 end;
var
 I64: Int64;
 QW: TQWord;
begin
 I64 := $FFFFFFFFFFFFFFF0;
 QW := TQWord(I64);
 QW := TQWord(Int64(QW)+2);
 ShowMessageFmt ("First DWORD: %x",[QW.Dw1]);
 ShowMessageFmt ("Seconf DWORD: %x",[QW.Dw2]);
end;


 
ArtemESC ©   (2005-10-09 16:09) [10]

>>Будет
Черт...
type
QWord = 0..$FFFFFFFFFFFFFFFF;


Не хочет компилироваться...


 
MBo ©   (2005-10-09 17:16) [11]

Int64 не хватает?


 
Fay ©   (2005-10-09 20:28) [12]

2 ArtemESC ©   (09.10.05 16:09) [10]
Delphi, в мудрости своей, пытается считать $FFFFFFFFFFFFFFFF положительным и целым.
Это число влезает только в Int64, а максимальное положительное Int64 равно $7FFFFFFFFFFFFFFF. При таких обстоятельствах Delphi, конечно, отказывается от сотрудничества. Есть такая беда.
А вот диапазон $FFFFFFFFFFFFFFFF..0 вполне можно задать, т.к. в этом случае число $FFFFFFFFFFFFFFFF будет воспринято как -1.


 
palva ©   (2005-10-09 21:49) [13]

Тогда уж задавать $8000000000000000..$7FFFFFFFFFFFFFFF
получится самый большой диапазон


 
Fay ©   (2005-10-10 08:42) [14]

2 palva ©   (09.10.05 21:49) [13]
Это Int64 8)



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

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

Наверх




Память: 0.49 MB
Время: 0.049 c
4-1124892466
Shopot
2005-08-24 18:07
2005.10.30
Как правильно работать с Com портом используя события.


14-1128791853
OSokin
2005-10-08 21:17
2005.10.30
Что вы думаете по поводу недавнего заявления Буша?


2-1128252504
Volf_555
2005-10-02 15:28
2005.10.30
Как в поле ввода пароля вводимый пароль отображать звёздочками?


1-1129016333
JohnKorsh
2005-10-11 11:38
2005.10.30
Как вызвать из процедуры обработчик события?


1-1128521993
Aleksey
2005-10-05 18:19
2005.10.30
Image.Canvas и LineTo