', $nibble[$msb];
+ for my $lsb (0 .. $#nibble) {
+ my $value = ($msb<<4) + $lsb;
+ if ($value <= 0x7F) {
+ print ' | Single byte ASCII'
+ if $value == 0;
+ }
+ elsif ($value <= 0xBF) {
+ print ' | Multi-byte continuation'
+ if $value == 0x80;
+ }
+ elsif ($value <= 0xC1) {
+ print ' | (Overl.)'
+ if $value == 0xC0;
+ }
+ elsif ($value <= 0xDF) {
+ print ' | 2-byte sequence start'
+ if $value == 0xC2;
+ print ' | '
+ if $value == 0xD0;
+ }
+ elsif ($value <= 0xEF) {
+ print ' | 3-byte sequence start'
+ if $value == 0xE0;
+ }
+ elsif ($value <= 0xF4) {
+ print ' | 4-byte sequence'
+ if $value == 0xF0;
+ }
+ elsif ($value <= 0xF7) {
+ print ' | (Overflow)'
+ if $value == 0xF5;
+ }
+ elsif ($value <= 0xFB) {
+ print ' | 5-byte'
+ if $value == 0xF8;
+ }
+ elsif ($value <= 0xFD) {
+ print ' | 6-byte'
+ if $value == 0xFC;
+ }
+ elsif ($value <= 0xFF) {
+ print ' | Invalid'
+ if $value == 0xFE;
+ }
+ else {
+ print "\n".' | ?';
+ }
+ }
+ print "\n";
}
print " |
---|