Unsigned Types 

www.madshi.net

Here's everything around Delphi's 1-byte unsigned ordinal type named "byte":

type
  TPByte   = ^byte;

  TSByte   = set of byte;
  TPSByte  = ^TSByte;

  TAByte   = array [0..maxInt-1] of byte;
  TPAByte  = ^TAByte;

  TDAByte  = array of byte;
  TPDAByte = ^TDAByte;

Then there is the "word" type, which is a 2-byte unsigned ordinal:

type
  TPWord   = ^word;

  TAWord   = array [0..maxInt shr 1-1] of word;
  TPAWord  = ^TAWord;

  TDAWord  = array of word;
  TPDAWord = ^TDAWord;

Finally we have the 4-byte unsigned ordinal type "cardinal":

type
  TPCardinal   = ^cardinal;

  TACardinal   = array [0..maxInt shr 2-1] of cardinal;
  TPACardinal  = ^TACardinal;

  TDACardinal  = array of cardinal;
  TPDACardinal = ^TDACardinal;

Finally we have the 4-byte unsigned ordinal type "NativeUInt":

type
  {$ifndef xe2}
    NativeUInt   = cardinal;
  {$endif}

  TPNativeUInt   = ^NativeUInt;

  TANativeUInt   = array [0..maxInt shr 2-1] of NativeUInt;
  TPANativeUInt  = ^TANativeUInt;

  TDANativeUInt  = array of NativeUInt;
  TPDANativeUInt = ^TDANativeUInt;