Библиотека преобразований
Библиотека 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 |
Примечания |
Нет. |