Re: PASCAL: Получение кода символа в двоичном формате...
Namik Kas пишет:
> Уважаемые знатоки PASCAL,
> здравствуйте!
>
> Не подскажете, как можно получить обратные функции, т.е.:
> функции, где аргумент типа Char, а результат типа целого десятичного (INTEGER),
> двоичного
> и 16-ричного чисел - т.е. отдельные функции, которые возвращали бы коды в трех
> указанных
>
> форматах (если, конечно, Pascal это допускает)?
>
>
Это элементарно и посмотреть легко, если получить помощь по CHR -
обратная функция ORD.
Но все еще проще, чтобы получить символ с кодом, например, 123 нужно
написать:
ch := #123;
Чтобы перейти на экране на следующую строку (в начало), не обязательно
писать
WriteLn;
Можно написать:
Write(#13,#10);
И аналогично:
Writeln(#13,#10,13,10);
Выведет с новой строки 13 и 10.
А числа, они все двоичные. Чтобы без проблем получить шестнадцатиричное,
можно или воспользоваться функцией Format, которая получилась в Паскале
не самая удобная для применения, или ручками:
например, так:
VAR
w: Word;
b: byte;
s: String;
BEGIN
w := $B2AF;
s:='';
while w <> 0 do begin
b:= w mod 16;
w := w div 16;
case b of
0..9: s:= chr(b + 48) + s;
10..15: s:= chr(b + 55) + s;
end;
end;
WriteLn(s);
END.
И еще, часто нужна таблица кодов. Ее получают так:
VAR
b: Byte;
BEGIN
for b:=32 to 255 do
Write(chr(b),' ',b:3,' '); WriteLn;
END.
--
С уважением, Борис