Библиотека преобразований

Библиотека mikroPascal PRO для ARM Conversions Library предоставляет подпрограммы для чисел с номерами и преобразования BCD / decimal.

Дерево зависимостей библиотеки

Conversions Library Dependency Tree

Процедуры библиотеки

Вы можете получить текстовое представление числового значения, передав его в одну из следующих подпрограмм:

Следующие функции преобразуют десятичные значения в BCD и наоборот:

ByteToStr

Прототип

procedure ByteToStr(input : byte; var output : array[3] of char);

Описание

Преобразует входной байт в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: байт, который будет преобразован
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует входной короткий (подписанный байт) номер в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: короткий номер для преобразования
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует входное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: слово, подлежащее преобразованию
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует целочисленное число ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: целое число, подлежащее преобразованию
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует входное длинное целое в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: длинное целое, которое нужно преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует двойное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: двойное слово, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 число в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: uint64 число, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 число в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются пробелами.

Параметры
  • input: int64 число, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует число с плавающей запятой в строку.

Выходная строка оставлена в силе и завершается нуль после последней цифры.

Параметры
  • fnum: число с плавающей запятой, которое необходимо преобразовать
  • str: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует расширенное вещественное число с плавающей точкой в строку.

Выходная строка оставлена в силе и завершается нуль после последней цифры.

Параметры
  • input: расширенное вещественное число с плавающей точкой, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует входной байт в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: байт, которые необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует короткое целое в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: короткое целое, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует входное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: слово, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует целое число ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: целое число, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует двойное слово в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: двойное слово, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует длинное целое ввода в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: длинное целое, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: число uint64, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 в строку. Строка вывода правильна, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: число int64, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует номер ввода в строку, содержащую шестнадцатеричное представление числа. Строка вывода выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: байт, который требуется преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует короткое число в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: sкороткое число, которое нкобходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует слово в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: слово, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует целое в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input:целое, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует длинное слово в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: длинное слово, которое требуется преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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);

Описание

Преобразует длинное целое в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: длинное целое, которое необходимо преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: число uint64, которое требуется преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
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 в строку, содержащую шестнадцатеричное представление числа. Строка выводится справа, а оставшиеся позиции слева (если есть) заполняются нулями.

Параметры
  • input: Число int64, которое требуется преобразовать
  • output: строка назначения
Возвращает

Ничего.

Требует

Ничего.

Роимер
var input : int64; 
    txt : array[16] of char;
//...
input := -4294967295;
Int64ToHex(input, txt);    // txt is '-0000000FFFFFFFF'
Примечания

Нет.

StrToInt

Прототип

function StrToInt(var input: string[6]): integer;

Описание

Преобразует строку в целое число.

Параметры
  • input: строка, подлежащая преобразованию
Возвращает

Целочисленная переменная.

Требует

Предполагается, что вводная строка является правильным представлением числа. Преобразование закончится первым символом, который не является десятичной цифрой.

Роимер
var ii: integer;
    
begin
  ii:= StrToInt('-1234'); 
end.
Примечания

Нет.

StrToWord

Прототип

function StrToWord(var input: string[5]): word;

Описание

Преобразует строку в слово.

Параметры
  • input: строка, подлежащая преобразованию
Возвращает

Переменная типа Word.

Требует

Предполагается, что вводная строка является правильным представлением числа. Преобразование закончится первым символом, который не является десятичной цифрой.

Роимер
var ww: word;

begin
  ww:= StrToword('65432');
end.
Примечания

Нет.

Bcd2Dec

Прототип

function Bcd2Dec(bcdnum : byte) : byte;

Описание

Converts input BCD number to its appropriate decimal representation.

Параметры
  • bcdnum: число, подлежащее конвертации
Возвращает

Преобразованное десятичное значение.

Требует

Ничего.

Роимер
var a, b : byte;
...
a := 22;
b := Bcd2Dec(a); // b equals 34
Примечания

Нет.

Dec2Bcd

Прототип

function Dec2Bcd(decnum : byte) : byte;

Описание

Преобразует входной номер в соответствующее представление BCD.

Параметры
  • decnum: число, подлежащее конвертации
Возвращает

Преобразованное значение BCD.

Требует

Ничего.

Роимер
var a, b : byte;
...
a := 22;
b := Dec2Bcd(a); // b equals 34
Примечания

Нет.

Bcd2Dec16

Прототип

function Bcd2Dec16(bcdnum : word) : word;

Описание

Преобразует 16-битовое число BCD в десятичный эквивалент.

Параметры
  • bcdnum: 16-битовое число BCD для преобразования
Возвращает

Преобразованное десятичное значение.

Требует

Ничего.

Роимер
var a, b : word;
...
a := 0x1234;        // a equals 4660
b := Bcd2Dec16(a);  // b equals 1234
Примечания

Нет.

Dec2Bcd16

Прототип

function Dec2Bcd16(decnum : word) : word;

Описание

Преобразует десятичное значение в эквивалент BCD.

Параметры
  • decnum десятичное число, которое необходимо преобразовать
Возвращает

Преобразованное значение BCD.

Требует

Ничего.

Роимер
var a, b : word;
...
a := 2345;
b := Dec2Bcd16(a);  // b equals 9029
Примечания

Нет.