04.04.2021
Новый выпуск журнала Автоматизация и Программирование.
27.03.2021
Новая статья Где взять Питон и как установить.
25.03.2021
Новый раздел Python.
04.03.2021
Новые видео и статья Процедура Exclude.
03.03.2021
Новый выпуск журнала Автоматизация и Программирование.
Раздел: Как стать программистом / Секреты программирования /
Представление чисел в исходных кодах
Способы представления чисел в разных системах счисления, разумеется, отличаются, потому что надо же нам как-то отличать десятичное число от двоичного.
И, поскольку мы программисты, то нам, прежде всего, надо знать, как записывать числа разных систем счисления в исходных кодах.
Зачем?
Ну новичкам это, обычно, не так уж и важно. Однако с опытом вы обязательно поймёте, что во некоторых случаях более удобно (и более понятно), когда число записано не в десятичном виде, а, например, в двоичном (к примеру если вы обрабатываете каждый бит числа).
Представления чисел в языках программирования также отличаются. Например,
шестнадцатеричное число
1F
в классическом Паскале записывается как $1F
, а в С++ как
0x1F
.
В этой статье и видео я расскажу о представлении чисел в FreePascal и Lazarus...
Числа по умолчанию - это числа в десятичной системе. То есть если вы в исходном коде запишите число, то это будет именно десятичное число. Чтобы в исходном коде представить число в другой системе счисления, нужно перед числом поставить соответствующий префикс:
- Чтобы задать число в шестнадцатеричном формате, перед числом надо
поставить знак доллара ($). Например:
$FF
. Это справедливо для Турбо Паскаль, FreePascal, Lazarus и Delphi. Символы шестнадцатеричного числа могут быть любого регистра. То есть $FF, $ff, $Ff и т.п. будет работать одинаково. - Начиная с версии 1.0.7 FreePascal поддерживает восьмеричные числа.
Чтобы задать число в восьмеричном формате добавьте к нему амперсанд (&).
Например,
&377
. - Для задания двоичного числа используется знак процента (%). Например,
%11111111
.
ПРИМЕЧАНИЕ
Двоичное и восьмеричное представление не поддерживается в режимах Турбо Паскаль и Делфи. Соответственно, и этими средствами разработки также не поддерживается.
Ну и напоследок пример простой программы, которая позволит лучше понять вышесказанное и запомнить форматы представления чисел в FreePascal и Lazarus:
program myprog; //Представление чисел в исходных кодах const dec = 255; //Десятичное число hex = $FF; //Шестнадцатеричное число oct = &377; //Восьмеричное число bin = %11111111; //Двоичное число //**************************************************************** // ОСНОВНАЯ ПРОГРАММА //**************************************************************** begin WriteLn('255 = ', dec); WriteLn('$FF = ', hex); WriteLn('&377 = ', oct); WriteLn('%11111111 = ', bin); WriteLn('The end. Press ENTER...'); ReadLn; end.
А вот это будет выведено на экран:

Подписаться на канал в YouTube
Вступить в группу "Основы программирования" Подписаться на рассылки по программированию |
![]() |
Директивы компилятора
Как это ни странно, но даже многие опытные программисты не используют директивы компилятора, считая их чем-то ненужным и бесполезным. А между тем, директивы компилятора - это очень классная штука. Если их умело применять в своих программах, то можно существенно сократить время на разработку и уменьшить количество рутинных операций. Подробнее... |