Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];

Вниз

перевод из 16ой в 10ую   Найти похожие ветки 

 
fiascko ©   (2010-10-26 16:07) [0]

Ребята, прошу помощи. Необходимо перевести числа из 16ой в 10 сс.
Взялся переводить и вот некоторые проблемы:
1) как переводить отрицательные числа (из 10ой в 16ую)? Калькулятор число FFD6F78C перевел как -2689140. Я думал сначала, что если первые 2 цифры FF, то число отрицательное, но это оказалось неверно.
2) у меня есть таблица с несколькими числами в десятичной и 16ой системе соответственно. Так там число F143F62C4113F42F перевели как 2.4921113696е+005.

Прошу помочь. Очень нужно. Заранее благодарен.


 
И. Павел ©   (2010-10-26 16:12) [1]

> [0] fiascko ©   (26.10.10 16:07)

Это дополнительный код. Он упрощает оперирование отрицательными числами в машинах.
http://ru.wikipedia.org/wiki/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4_(%D0%BF%D1%80%D0%B5%D0%B4%D1%81%D1%82%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0)


 
Anatoly Podgoretsky ©   (2010-10-26 16:36) [2]

> fiascko  (26.10.2010 16:07:00)  [0]

IntToStr(StrToInt("$"+S, 8))


 
Anatoly Podgoretsky ©   (2010-10-26 16:36) [3]

Это для Intger для Int64 вместо 8 16


 
fiascko ©   (2010-10-26 17:23) [4]

это все понятно. А как получили из F143F62C4113F42F -->2.4921113696е+005. Это же дробное число, как я понимаю. Делфи не переводит, калькулятор дает неверное значение.


 
Palladin ©   (2010-10-26 17:26) [5]

http://do.sibsutis.ru/bakalavr/sem1/course77/lec10_3.htm


 
fiascko ©   (2010-10-26 17:36) [6]

не понял немного


 
Германн ©   (2010-10-26 17:39) [7]


> А как получили из F143F62C4113F42F -->2.4921113696е+005

А ты уверен что F143F62C4113F42F это "строковое представление" числа?


 
Palladin ©   (2010-10-26 17:41) [8]

за метлой


 
fiascko ©   (2010-10-26 17:50) [9]


> А ты уверен что F143F62C4113F42F это "строковое представление"
> числа?

в смысле строковое?


 
Германн ©   (2010-10-26 17:54) [10]

Тогда ответь что у тебя за табличка
> у меня есть таблица с несколькими числами в десятичной и
> 16ой системе соответственно.

Откуда ты ее взял?


 
Anatoly Podgoretsky ©   (2010-10-26 17:56) [11]


> fiascko ©   (26.10.10 17:23) [4]

Ты нас спрашиваешь про свои числа :-)


 
fiascko ©   (2010-10-26 17:57) [12]

эта табличка из примера протокола обмена данными с gps-приемника.


 
Германн ©   (2010-10-26 18:02) [13]


> эта табличка из примера протокола обмена данными с gps-приемника.
>
>

Значит это не "строковое", а "машинное" представление числа. И никакой калькулятор тебе не поможет.


 
fiascko ©   (2010-10-26 18:03) [14]

все простые числа нормально перевел без затруднений


 
Германн ©   (2010-10-26 18:40) [15]


> все простые числа нормально перевел без затруднений

Так то были целые числа.
http://uchebnik1.narod.ru/chislo.html
http://kuzelenkov.narod.ru/mati/book/inform/inform5.html


 
fiascko ©   (2010-10-26 18:56) [16]

о, спасибо


 
fiascko ©   (2010-10-26 18:57) [17]

а как реализовать перевод вещественных чисел в Делфи?


 
Германн ©   (2010-10-26 20:14) [18]


> а как реализовать перевод вещественных чисел в Делфи

А перевод и не нужен. Раз речь о протоколе приема/передачи достаточно загрузить при приеме 8 байт в память по адресу переменной типа Double, а при передаче передать 8 байт из памяти начиная с адреса этой переменной.


 
fiascko ©   (2010-10-26 20:38) [19]

благодарствую



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

Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.003 c
15-1285835897
Kerk
2010-09-30 12:38
2011.01.16
Подскажите компонент


15-1285878556
Юрий
2010-10-01 00:29
2011.01.16
С днем рождения ! 1 октября 2010 пятница


15-1285532959
Юрий
2010-09-27 00:29
2011.01.16
С днем рождения ! 27 сентября 2010 понедельник


2-1288068191
Делфиец
2010-10-26 08:43
2011.01.16
Как декодировать сообщения из TIdPOP3


2-1287557759
LDV
2010-10-20 10:55
2011.01.16
Связать алгоритм с классами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский