Вниз
Скачать: CL | DM;

Помогите записать DWORD ПЕРЕМЕНУЮ!   Найти похожие ветки 

← →
NikNet ©   (2005-08-20 16:30) [0]

Помогите записать DWORD ПЕРЕМЕНУЮ!

в общем надо сделать так
есть DWORD и есть также ещё три перемнных
в таком порядке:
BYTE
WORD
BYTE

вот DWORD надо записать в них с помощью SHL/SHR/AND/...


← →
alpet ©   (2005-08-20 17:21) [1]


{$APPTYPE CONSOLE}
uses Windows, SysUtils;
var
  r: packed record
   case byte of
   0:(
     a: byte;
     b: word;
     c: byte);
   1:(dw: dword);
  end;

begin
r.dw := $11222233;
with r do Writeln (Format ("%x, %x, %x", [a, b, c]));
end;


← →
NikNet ©   (2005-08-20 17:56) [2]

Нееее мне надо с помощью логических ф-ций :(


← →
begin...end ©   (2005-08-20 18:12) [3]

> NikNet ©   (20.08.05 17:56) [2]

var
 A: Byte;
 B: Word;
 C: Byte;
 D: DWORD;
begin
 A := D;
 B := D shr 8;
 C := D shr 24
end.


← →
Alexander Panov ©   (2005-08-20 19:09) [4]

var
 A: Byte;
 B: Word;
 C: Byte;
 D: DWORD;
begin
 A := D;
 B := (D shl 8) shr 8;
 C := D shr 24
end.


← →
Alexander Panov ©   (2005-08-20 19:11) [5]

Еще неправильно.
Вот так правильно:

var
A: Byte;
B: Word;
C: Byte;
D: DWORD;
begin
A := D;
B := (D shl 8) shr 16;
C := D shr 24
end.


← →
begin...end ©   (2005-08-20 19:19) [6]

> Alexander Panov ©   (20.08.05 19:09) [4]
> Alexander Panov ©   (20.08.05 19:11) [5]

Правильный ответ уже был дан в [3].


← →
Alexander Panov ©   (2005-08-20 19:33) [7]

Действительно.


← →
KilkennyCat ©   (2005-08-20 19:42) [8]

правильного ответа еще нет. По условию используются shl shr and


← →
begin...end ©   (2005-08-20 19:49) [9]

> KilkennyCat ©   (20.08.05 19:42) [8]

Правильный ответ уже есть. См. условие в [2]. Именно на этот пост я и отвечал, предположив, что под функциями имелись в виду операторы.


← →
Defunct ©   (2005-08-20 21:17) [10]

KilkennyCat ©   (20.08.05 19:42) [8]
> По условию используются shl shr and

A := D and $ff;
B := D shl 8 shr 16;
C := D shr 24;



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.025 c
6-1118389287
Dimitrij
2005-06-10 11:41
2005.10.02
Проблема с NMFTP.List;


4-1123505386
dima1234
2005-08-08 16:49
2005.10.02
Серийный номер диска


14-1126677712
Аноним
2005-09-14 10:01
2005.10.02
dnsbl.sorbs.net


1-1126201432
dRake
2005-09-08 21:43
2005.10.02
Как починить дебаггер?


2-1124440299
ba4inskii
2005-08-19 12:31
2005.10.02
Помогите




   Наверх