Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.15;
Скачать: CL | DM;

Вниз

Функция перевода чисел из 10-ой системы в 16-ю   Найти похожие ветки 

 
Pliajnik   (2003-04-30 23:55) [0]

Дайте пожалуйста...


 
default ©   (2003-04-30 23:58) [1]

function IntToHex(Int: LongWord): String;
const
MasDig = "0123456789ABCDEF";
var
i, NextHexDigit: Byte;
Priem: LongWord;

begin

if Int = 0 then begin Result := "0"; Exit; end;

for i := 1 to 8 do
begin
asm
mov Priem,0
mov ecx,Int
shld Priem,ecx,4
shl Int,4
mov al,byte ptr Priem
mov NextHexDigit,al
end;

Result := Result + MasDig[NextHexDigit + 1];
end;

while Result[1] = "0" do Delete(Result, 1, 1);

end;

кстати довольно оригинальная...


 
Pliajnik   (2003-05-01 00:51) [2]

спасибо


 
Anatoly Podgoretsky ©   (2003-05-01 01:29) [3]

IntToHex(StrToInt(S),N)


 
Ihor Osov'yak ©   (2003-05-01 01:39) [4]

1. Если под числами понимать строки - то см. Anatoly Podgoretsky © (01.05.03 01:29) с маленьким дополнением:

StrToInt имеет обычай генерировать ексепшен, если строку нельзя преобразовать в интеджер. Поэтому этот код может и придется брать в try except end, в зависимости от специфики задачи.
Или пользовть Val с временной переменной вместо StrToInt

2. Если под числами понимать integer и иже с ними - то и преоьразовывать как-бы ничего и надо :-)



 
Anatoly Podgoretsky ©   (2003-05-01 11:23) [5]

А если понимать integer то не приходится говорить о десятичной системе, кроме случая двоично-десятичных чисел.


 
sevlad   (2003-05-01 11:41) [6]

2 Ihor Osov"yak ©
try except end емеет смысл использовать если нужно уведомить об ошибке (или залогировать ошибку)
А если надо проглатить в лубом случае хоть что-то
IntToHex(StrToIntDef(S, что-то),N)



 
Ihor Osov'yak ©   (2003-05-01 12:57) [7]

2 sevlad (01.05.03 11:41)

Вот в любом случае и не проглотишь, ибо при определенных входных данных может быть ексепшен. А его обрабатывать надо. Другой вопрос, с какой целью.

2 Anatoly Podgoretsky © (01.05.03 11:23) :-)


 
default ©   (2003-05-01 13:06) [8]

парню надо "пример" а не юзать бесконечно ф-ции написанные профессионалами Borland


 
sevlad   (2003-05-01 15:53) [9]

Ihor Osov"yak ©
Обрабатывать надо конечно, но если обработка заключаеться в уставке какого-то значения по умолчанию, без уведомления про ошибку - то почему бы не написать одну строчку как я сделал?



Страницы: 1 вся ветка

Текущий архив: 2003.05.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
14-46960
dtm
2003-04-26 15:00
2003.05.15
В чём коренные отличия Дельфи 5 от Дельфи 6?


4-47059
Diamond Cat
2003-03-14 14:08
2003.05.15
SendInput


3-46659
DmitryNekl
2003-04-24 20:21
2003.05.15
Вопрос по запросу


3-46627
N&N
2003-04-24 07:45
2003.05.15
Заполнение таблицы из справочника


1-46828
damx
2003-05-03 00:42
2003.05.15
ListBox