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

Вниз

hex to demical   Найти похожие ветки 

 
bagos   (2010-01-20 01:52) [0]

как можно перевести шестнадцатиричное в десятичное число?


 
bagos   (2010-01-20 01:54) [1]

может функция встроенная есть?


 
Медвежонок Пятачок ©   (2010-01-20 01:59) [2]

StrToInt например


 
Германн ©   (2010-01-20 02:05) [3]

1. Нет "шестнадцатиричных" чисел, как нет и "десятичных" чисел. Есть просто числа. Целые или действительные.
2. Есть "строковые представления" чисел. Двоичные, троичные, восьмиричные, десятичные, шеснадцатиричные и т.п.
3. IntToStr(StrToInt($FF)).
Дальше сам разбирайся.


 
Anatoly Podgoretsky ©   (2010-01-20 11:35) [4]

> bagos  (20.01.2010 01:52:00)  [0]

StrToInt


 
Sha ©   (2010-01-20 14:24) [5]

> Есть просто числа. Целые или действительные.

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


 
oldman ©   (2010-01-20 14:28) [6]


> Sha ©   (20.01.10 14:24) [5]


А разве арифметическим действиям не по барабану формат представления?


 
Sha ©   (2010-01-20 14:32) [7]

Нет, конечно.
Например, есть инструкция сложения для двоичного представления и есть для двоично-десятичного.


 
Anatoly Podgoretsky ©   (2010-01-20 14:55) [8]

> Sha  (20.01.2010 14:32:07)  [7]

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


 
Sha ©   (2010-01-20 14:56) [9]

Точнее будет сказать, что для ASCII и BCD форматов есть специальные инструкции коррекции.
Ну и кроме того, очевидно, что даже для двоичного формата инструкция должна содержать информацию о размере операндов.


 
Sha ©   (2010-01-20 14:58) [10]

[9] относится к [7]

> Anatoly Podgoretsky ©   (20.01.10 14:55) [8]
> Процессор работает только со своим внутренним двоичным представлением.

Которых может быть не одно.


 
Anatoly Podgoretsky ©   (2010-01-20 15:09) [11]

> Sha  (20.01.2010 14:58:10)  [10]

Мне известно два и вроде бы это все.


 
Anatoly Podgoretsky ©   (2010-01-20 15:12) [12]

Разумеется я говорю, только про целые.


 
Sha ©   (2010-01-20 15:16) [13]

В IA-32 целые числа могут быть в ASCII, BCD и Binary форматах.
Кроме того возможна форма представления со знаком.


 
Игорь Шевченко ©   (2010-01-20 15:18) [14]

Sha ©   (20.01.10 15:16) [13]

А вот любопытно, команды арифметики с BСD и ASCII где-то используются ?


 
Sha ©   (2010-01-20 15:25) [15]

Теоретически их назначение пользовательский ввод-вывод.
Сам не использую. Встречается у других крайне редко.

Из редко употребляемых, но казалось бы очень нужных, можно отметить еще команду проверки четности.
Использовал 1-2 раза в драйвере клавиатуры под DOS.


 
Игорь Шевченко ©   (2010-01-20 15:33) [16]

Sha ©   (20.01.10 15:25) [15]

Я например вообще не видел за последние 20 лет, потому и спрашиваю, ты вроде больше с ассемблером общаешься


 
Sha ©   (2010-01-20 15:47) [17]

> Игорь Шевченко ©   (20.01.10 15:33) [16]
> Я например вообще не видел за последние 20 лет

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


 
Anatoly Podgoretsky ©   (2010-01-20 17:06) [18]

> Игорь Шевченко  (20.01.2010 15:18:14)  [14]

Можно использовать как неупакованый BCD поэтому не стоит их относить к ASCII


 
Anatoly Podgoretsky ©   (2010-01-20 17:08) [19]

> Sha  (20.01.2010 15:47:17)  [17]

Мне кажется, что не только забросил, но еще и не помнит.


 
Anatoly Podgoretsky ©   (2010-01-20 17:11) [20]

> Sha  (20.01.2010 15:47:17)  [17]

Мне кажется, что и включил то он их для поддержки dBase II


 
Игорь Шевченко ©   (2010-01-20 17:21) [21]


> Мне кажется, что и включил то он их для поддержки dBase
> II


а разве 8086 выпущен не до того, как dBase II ?


 
Anatoly Podgoretsky ©   (2010-01-20 19:33) [22]

> Игорь Шевченко  (20.01.2010 17:21:21)  [21]

Они прогнозировали появление программ, которые очень нуждались в BCD обработке. Вот ее они и поддержали


 
Игорь Шевченко ©   (2010-01-20 20:02) [23]

Anatoly Podgoretsky ©   (20.01.10 19:33) [22]

Это кто б спорил, команды такой обработки и в system/360 были, нужда в BCD обработке была


 
Jeer ©   (2010-01-21 09:41) [24]


> Игорь Шевченко ©   (20.01.10 17:21) [21]
> > Мне кажется, что и включил то он их для поддержки dBase
> > II
> а разве 8086 выпущен не до того, как dBase II ?


DBase II ( 1980 г. ф. Аштон-Тейт ) работал еще на 8-р процессорах i8080.
Лично c DBase II работал в среде CP/M в начале 80-х.


 
Anatoly Podgoretsky ©   (2010-01-21 09:45) [25]

> Jeer  (21.01.2010 09:41:24)  [24]

Значит не ошибся, но даже если его бы не было, то о нем Интел заранее побеспокоил. В то время нужда в этом типе была очень высокая, был очень востребован. Он очень удобен для наблюдения в HEX вьюверах


 
Jeer ©   (2010-01-21 09:47) [26]

Хотя - да, глянул.. i8086 год выпуска 1978


 
Jeer ©   (2010-01-21 09:48) [27]

Ну, в общем-то понятно, реалный писюк IBM сделала на i8088


 
Anatoly Podgoretsky ©   (2010-01-21 10:14) [28]


> Хотя - да, глянул.. i8086 год выпуска 1978

Ты про что?


 
Jeer ©   (2010-01-21 10:17) [29]


> Ты про что?


К тому, что Игорь прав - i8086 выпущен в 1978 г., т.е. до появления DBase II в 1980 г.


 
Anatoly Podgoretsky ©   (2010-01-21 10:30) [30]

> Jeer  (21.01.2010 10:17:29)  [29]

А про это? Конечно прав. Я тоже на всякий случай проверил дату выпуска. Как ни странно но она совпадает.



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

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

Наверх




Память: 0.53 MB
Время: 0.013 c
2-1263433208
Kenny1
2010-01-14 04:40
2010.03.21
Изменить цвет TPanel при помощи API


1-1240936541
Igor2010
2009-04-28 20:35
2010.03.21
JavaScript+IHTMLWindows2


2-1263924681
Б
2010-01-19 21:11
2010.03.21
Сколько различных символов содержит строка.


2-1263635338
OOO_leg
2010-01-16 12:48
2010.03.21
Компоненты


13-1124902059
jenbond
2005-08-24 20:47
2010.03.21
Мысли по вопросу о создании web приложения