Библиотека преобразований
Библиотека mikroPascal PRO для ARM Conversions Library предоставляет подпрограммы для чисел с номерами и преобразования BCD / decimal.
Дерево зависимостей библиотеки
Процедуры библиотеки
Вы можете получить текстовое представление числового значения, передав его в одну из следующих подпрограмм:
- ByteToStr
- ShortToStr
- WordToStr
- IntToStr
- LongIntToStr
- LongWordToStr
- Uint64ToStr
- Int64ToStr
- FloatToStr
- ExtendedToStr
- ByteToStrWithZeros
- ShortToStrWithZeros
- WordToStrWithZeros
- IntToStrWithZeros
- LongWordToStrWithZeros
- LongIntToStrWithZeros
- Uint64ToStrWithZeros
- Int64ToStrWithZeros
- ByteToHex
- ShortToHex
- WordToHex
- IntToHex
- LongWordToHex
- LongIntToHex
- Uint64ToHex
- Int64ToHex
- StrToInt
- StrToWord
Следующие функции преобразуют десятичные значения в BCD и наоборот:
ByteToStr
| Прототип |
procedure ByteToStr(input : byte; var output : array[3] of char); |
|---|---|
| Описание |
Преобразует входной байт в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : byte;
txt : array[3] of char;
...
t := 24;
ByteToStr(t, txt); // txt is " 24" (one blank here)
|
| Примечания |
Нет. |
ShortToStr
| Прототип |
procedure ShortToStr(input : short; var output : array[4] of char); |
|---|---|
| Описание |
Преобразует входной короткий (подписанный байт) номер в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : short;
txt : array[4] of char;
...
t := -24;
ShortToStr(t, txt); // txt is " -24" (one blank here)
|
| Примечания |
Нет. |
WordToStr
| Прототип |
procedure WordToStr(input : word; var output : array[5] of char); |
|---|---|
| Описание |
Преобразует входное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : word;
txt : array[5] of char;
...
t := 437;
WordToStr(t, txt); // txt is " 437" (two blanks here)
|
| Примечания |
Нет. |
IntToStr
| Прототип |
procedure IntToStr(input : integer; var output : array[6] of char); |
|---|---|
| Описание |
Преобразует целочисленное число ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : integer;
txt : array[6] of char;
//...
begin
input := -4220;
IntToStr(input, txt); // txt is ' -4220'
|
| Примечания |
Нет. |
LongintToStr
| Прототип |
procedure LongintToStr(input : longint; var output : array[11] of char); |
|---|---|
| Описание |
Преобразует входное длинное целое в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : longint;
txt : array[11] of char;
//...
begin
input := -12345678;
LongintToStr(input, txt); // txt is ' -12345678'
|
| Примечания |
Нет. |
LongWordToStr
| Прототип |
procedure LongWordToStr(input : dword; var output : array[10] of char); |
|---|---|
| Описание |
Преобразует двойное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : longint;
txt : array[10] of char;
//...
begin
input := 12345678;
LongWordToStr(input, txt); // txt is ' 12345678'
|
| Примечания |
Нет. |
Uint64ToStr
| Прототип |
procedure Uint64ToStr(input : uint64; var output : array[20] of char); |
|---|---|
| Описание |
Преобразует uint64 число в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : uint64;
txt : array[20] of char;
//...
begin
input := 0x1122334455667788;
Uint64ToStr(input, txt); // txt is ' 1122334455667788'
|
| Примечания |
Нет. |
Int64ToStr
| Прототип |
procedure Int64ToStr(input : int64; var output : array[20] of char); |
|---|---|
| Описание |
Преобразует int64 число в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : int64;
txt : array[20] of char;
//...
begin
input := 0x1122334455667788;
Int64ToStr(input, txt); // txt is ' 1122334455667788'
|
| Примечания |
Нет. |
FloatToStr
| Прототип |
procedure FloatToStr(fnum : real; var str : array[23] of char); |
|---|---|
| Описание |
Преобразует число с плавающей запятой в строку. Выходная строка оставлена в силе и завершается нуль после последней цифры. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var ff1, ff2, ff3 : real;
txt : array[10] of char;
...
ff1 := -374.2;
ff2 := 123.456789;
ff3 := 0.000001234;
FloatToStr(ff1, txt); // txt is "-374.20001"
FloatToStr(ff2, txt); // txt is "123.45678"
FloatToStr(ff3, txt); // txt is "0.000000"
|
| Примечания |
Число с плавающей запятой будет усечено до 7 наиболее значимых цифр перед конверсией. |
ExtendedToStr
| Прототип |
procedure ExtendedToStr(input : extended; var output : array[23] of char); |
|---|---|
| Описание |
Преобразует расширенное вещественное число с плавающей точкой в строку. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var ff1, ff2, ff3 : extended;
txt : array[23] of char;
...
ff1 := -374.2;
ff2 := 123.456789;
ff3 := 0.000001234;
ExtendedToStr(ff1, txt); // txt is "-374.20001"
ExtendedToStr(ff2, txt); // txt is "123.45678"
ExtendedToStr(ff3, txt); // txt is "0.000000"
|
| Примечания |
Нет. |
ByteToStrWithZeros
| Прототип |
procedure ByteToStrWithZeros(input: byte; var output: array[3] of char); |
|---|---|
| Описание |
Преобразует входной байт в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : byte;
txt : array[3] of char;
//...
t := 43;
ByteToStrWithZeros(t, txt); // txt is '043'
|
| Примечания |
Нет. |
ShortToStrWithZeros
| Прототип |
procedure ShortToStrWithZeros(input: short; var output: array[4] of char); |
|---|---|
| Описание |
Преобразует короткое целое в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : short;
txt : array[4] of char;
//...
t := -43;
ShortToStrWithZeros(t, txt); // txt is '-043'
|
| Примечания |
Нет. |
WordToStrWithZeros
| Прототип |
procedure WordToStrWithZeros(input: word; var output: array[5] of char); |
|---|---|
| Описание |
Преобразует входное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : word;
txt : array[5] of char;
//...
t := 437;
WordToStrWithZeros(t, txt); // txt is '00437'
|
| Примечания |
Нет. |
IntToStrWithZeros
| Прототип |
procedure IntToStrWithZeros(input: integer; var output: array[6] of char); |
|---|---|
| Описание |
Преобразует целое число ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : integer;
txt : array[6] of char;
//...
t := -3276;
IntToStrWithZeros(t, txt); // txt is '-03276'
|
| Примечания |
Нет. |
LongWordToStrWithZeros
| Прототип |
procedure LongWordToStrWithZeros(input: dword; var output: array[10] of char); |
|---|---|
| Описание |
Преобразует двойное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : dword;
txt : array[10] of char;
//...
t := 12345678;
LongWordToStrWithZeros(t, txt); // txt is '0012345678'
|
| Примечания |
Нет. |
LongIntToStrWithZeros
| Прототип |
procedure LongIntToStrWithZeros(input: longint; var output: array[11] of char); |
|---|---|
| Описание |
Преобразует длинное целое ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : longint;
txt : array[11] of char;
//...
t := -12345678;
LongIntToStrWithZeros(t, txt); // txt is '-0012345678'
|
| Примечания |
Нет. |
Uint64ToStrWithZeros
| Прототип |
procedure Uint64ToStrWithZeros(input: uint64; var output: array[20] of char); |
|---|---|
| Описание |
Преобразует число uint64 в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : uint64;
txt : array[20] of char;
//...
t := 1234567890;
Uint64ToStrWithZeros(t, txt); // txt is '00000000001234567890'
|
| Примечания |
Нет. |
Int64ToStrWithZeros
| Прототип |
procedure Int64ToStrWithZeros(input: int64; var output: array[20] of char); |
|---|---|
| Описание |
Преобразует число int64 в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : iint64;
txt : array[20] of char;
//...
t := -1234567890;
Int64ToStrWithZeros(t, txt); // txt is '-0000000001234567890'
|
| Примечания |
Нет. |
ByteToHex
| Прототип |
procedure ByteToHex(input : byte; var output : array[2] of char); |
|---|---|
| Описание |
Преобразует номер ввода в строку, содержащую шестнадцатеричное представление числа. Строка вывода выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : byte;
txt : array[2] of char;
...
t := 2;
ByteToHex(t, txt); // txt is "02"
|
| Примечания |
Нет. |
ShortToHex
| Прототип |
procedure ShortToHex(input : short; var output : array[2] of char); |
|---|---|
| Описание |
Преобразует короткое число в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : short;
txt : array[2] of char;
...
t := -100;
ShortToHex(t, txt); // txt is "9C"
|
| Примечания |
Нет. |
WordToHex
| Прототип |
procedure WordToHex(input : word; var output : array[4] of char); |
|---|---|
| Описание |
Преобразует слово в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var t : word;
txt : array[4] of char;
...
t := 1111;
WordToHex(t, txt); // txt is "0457"
|
| Примечания |
Нет. |
IntToHex
| Прототип |
procedure IntToHex(input : integer; var output : array[64] of char); |
|---|---|
| Описание |
Преобразует целое в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : integer;
txt : string[4];
//...
input := -32768;
IntToHex(input, txt); // txt is '8000'
|
| Примечания |
Нет. |
LongWordToHex
| Прототип |
procedure LongWordToHex(input : dword; var output : array[8] of char); |
|---|---|
| Описание |
Преобразует длинное слово в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : dword;
txt : array[8] of char;
//...
input := 65535;
LongWordToHex(input, txt); // txt is '0000FFFF'
|
| Примечания |
Нет. |
LongIntToHex
| Прототип |
procedure LongIntToHex(input : longint; var output : array[8] of char); |
|---|---|
| Описание |
Преобразует длинное целое в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : longint;
txt : array[8] of char;
//...
input := -2147483648;
LongIntToHex(input, txt); // txt is '80000000'
|
| Примечания |
Нет. |
Uint64ToHex
| Прототип |
procedure Uint64ToHex(input : uint64; var output : array[16] of char); |
|---|---|
| Описание |
Преобразует число Uшnt64 в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : uint64;
txt : array[16] of char;
//...
input := 4294967295;
Uint64ToHex(input, txt); // txt is '00000000FFFFFFFF'
|
| Примечания |
Нет. |
Int64ToHex
| Прототип |
procedure Int64ToHex(input : int64; var output : array[16] of char); |
|---|---|
| Описание |
Преобразует целое Int64 в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями. |
| Параметры |
|
| Возвращает |
Ничего. |
| Требует |
Ничего. |
| Роимер |
var input : int64;
txt : array[16] of char;
//...
input := -4294967295;
Int64ToHex(input, txt); // txt is '-0000000FFFFFFFF'
|
| Примечания |
Нет. |
StrToInt
| Прототип |
function StrToInt(var input: string[6]): integer; |
|---|---|
| Описание |
Преобразует строку в целое число. |
| Параметры |
|
| Возвращает |
Целочисленная переменная. |
| Требует |
Предполагается, что вводная строка является правильным представлением числа. Преобразование закончится первым символом, который не является десятичной цифрой. |
| Роимер |
var ii: integer;
begin
ii:= StrToInt('-1234');
end.
|
| Примечания |
Нет. |
StrToWord
| Прототип |
function StrToWord(var input: string[5]): word; |
|---|---|
| Описание |
Преобразует строку в слово. |
| Параметры |
|
| Возвращает |
Переменная типа Word. |
| Требует |
Предполагается, что вводная строка является правильным представлением числа. Преобразование закончится первым символом, который не является десятичной цифрой. |
| Роимер |
var ww: word;
begin
ww:= StrToword('65432');
end.
|
| Примечания |
Нет. |
Bcd2Dec
| Прототип |
function Bcd2Dec(bcdnum : byte) : byte; |
|---|---|
| Описание |
Converts input BCD number to its appropriate decimal representation. |
| Параметры |
|
| Возвращает |
Преобразованное десятичное значение. |
| Требует |
Ничего. |
| Роимер |
var a, b : byte; ... a := 22; b := Bcd2Dec(a); // b equals 34 |
| Примечания |
Нет. |
Dec2Bcd
| Прототип |
function Dec2Bcd(decnum : byte) : byte; |
|---|---|
| Описание |
Преобразует входной номер в соответствующее представление BCD. |
| Параметры |
|
| Возвращает |
Преобразованное значение BCD. |
| Требует |
Ничего. |
| Роимер |
var a, b : byte; ... a := 22; b := Dec2Bcd(a); // b equals 34 |
| Примечания |
Нет. |
Bcd2Dec16
| Прототип |
function Bcd2Dec16(bcdnum : word) : word; |
|---|---|
| Описание |
Преобразует 16-битовое число BCD в десятичный эквивалент. |
| Параметры |
|
| Возвращает |
Преобразованное десятичное значение. |
| Требует |
Ничего. |
| Роимер |
var a, b : word; ... a := 0x1234; // a equals 4660 b := Bcd2Dec16(a); // b equals 1234 |
| Примечания |
Нет. |
Dec2Bcd16
| Прототип |
function Dec2Bcd16(decnum : word) : word; |
|---|---|
| Описание |
Преобразует десятичное значение в эквивалент BCD. |
| Параметры |
|
| Возвращает |
Преобразованное значение BCD. |
| Требует |
Ничего. |
| Роимер |
var a, b : word; ... a := 2345; b := Dec2Bcd16(a); // b equals 9029 |
| Примечания |
Нет. |