Получить верхние 4 бита байта - PullRequest
0 голосов
/ 26 июня 2011

Я пытаюсь получить старшие 4 бита Byte.

Это моя попытка:

function Upper4Bits(const X : Byte): Byte;
type 
   BS = set of 0..7;
var 
   K : Byte; Q: BS;
begin
  Q := [];
  for K := 0 to 3 do {is it right? upper?}
    {what i need here?}
    Include(Q, {what i put here});

  Upper4Bits := Byte(Q)
end;

Заранее спасибо.

Ответы [ 3 ]

8 голосов
/ 26 июня 2011

Согласно вашему комментарию к ответу Котлински, вы хотите result := (byte1 and $F0) or (byte3 and $0F).

6 голосов
/ 26 июня 2011

enter image description here

3 голосов
/ 26 июня 2011

Как насчет Upper4Bits := X Shr 4;?

...