Форум: "Начинающим";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.006 c