![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как обозначаются бвоичные данные?
Andrewtitoff © (2010-05-10 21:06:00)Добрый день, уважаемые мастера!
Вопрос банальный и может быть глупый, но никак не могу сообразить как записать число в двоичном виде... =(((
Я имею ввиду:
var
b : byte;
begin
b:=255; <- это в десятичном
b:=$FF; <- это в шецнацетиричном
А как будет в двоичном?, что то вроде
b:=11111111b; <- как-то так возможно записать?
end.
Юрий Зотов (2010-05-11 13:39:00) [1]> Игорь Шевченко © (11.05.10 00:41) [15]
> А вот в ассемблерах, на которых для железа пишут, имеется (обычно)
> двоичная запись констант. Там наверное разработчики ни хрена в
> наглядности и компактности не понимают.
Ключевое слово - ОБЫЧНО.
Юрий Зотов (2010-05-11 13:38:00) [2]> andrewtitoff © (10.05.10 23:29) [11]
> 11111 - то в принципе не так страшно, только обычно пользуются
> байтами - а это уже 11111111, а с этим уже сложнее, особенно когда
> думаешь об одном, потом нужно вспомнить сколько 10101010 будет в
> шеснадцатиричной и когда сосчитаешь - уже забываешь о чем думал
Открою Вам одну страшную тайну. Считать не надо. Думать тоже не надо. Надо пользоваться тетрадами. Показываю на Вашем же примере.
10101010 содержит 2 тетрады: 1010 и 1010 - то есть, это $AA.
И так переводятся числа ЛЮБОЙ длины. Поэтому достаточно помнить таблицу от 1010 ($A) до 1111 ($F). Всего 6 строк. Что не проблема.
Хотя даже и эти 6 строк помнить не обязательно - они вычисляются за три секунды.
RWolf (2010-05-11 10:50:00) [3]
> ты прежде чем утверждать,
> подумай. Например, что такое внешнее устройство, что такое
> LPT и есть ли еще что-нить помимо USB
С учётом того, что COM и LPT ушли в прошлое, остаётся разве что Ethernet. Но его реализовать в устройстве сильно сложнее, чем USB, так что альтернатив нет.
> Или ты из тех, кто светодиодики на лпт вешает?
Чтобы прикрутить что-то к домашнему компьютеру, разумеется, использую или LPT, или COM — экономия на м/с сопряжения, проще схема, удобнее отлаживать.
На лпт у меня сейчас программатор висит — одна копеечная буферная м/с.
Anatoly Podgoretsky (2010-05-11 10:17:00) [4]> Leonid Troyanovsky (11.05.2010 09:43:29) [29]
Вот, вот и мне приходится использовать внешнии технические средства. Я уж
лучше напишу в Хекс
Leonid Troyanovsky (2010-05-11 09:43:00) [5]
> Anatoly Podgoretsky © (11.05.10 09:19) [26]
> обычно когда мне лень, а в документации приведено в двоичном
> виде - ну не переводить же?, поскольку тогда приходится
> напрягатся, думать а что же значит 00010000
Я себе не доверяю, пускаю Calculator.
--
Regards, LVT.
KilkennyCat (2010-05-11 09:39:00) [6]
> RWolf © (11.05.10 09:33) [27]
ты прежде чем утверждать, подумай. Например, что такое внешнее устройство, что такое LPT и есть ли еще что-нить помимо USB, а то потом будешь утверждать всегда, что имел ввиду "ряд случаев".
Или ты из тех, кто светодиодики на лпт вешает?
RWolf (2010-05-11 09:33:00) [7]
> > например когда работаешь с ЛПТ портом...ты хотел сказать,
> когда лпт используют через жопу.ибо в нормальном варианте
> на лпт посылаются нормальные данные, которые уже потом обрабатываются
> внешним устройством, а не лампочки зажигать.
если уж вешать внешнее устройство, то на USB.
LPT тем и удобен, что в ряде случаев позволяет обойтись без лишней логики сопряжения.
Anatoly Podgoretsky (2010-05-11 09:19:00) [8]
> А вот в ассемблерах, на которых для железа пишут, имеется
> (обычно) двоичная запись констант. Там наверное разработчики
> ни хрена в наглядности и компактности не понимают.
Не использую практически, исключение можно по пальцам посчитать, обычно когда мне лень, а в документации приведено в двоичном виде - ну не переводить же?, поскольку тогда приходится напрягатся, думать а что же значит 00010000, я использую именованые константы, а там уже без разницы какой формат. 00010000, 10h или 16, когда явно написано, что это RxReady.
Anatoly Podgoretsky (2010-05-11 09:14:00) [9]
> А вот если нужно на некий вывод порта микропроцессора подать
> конкретный сигнал,
А тогда более удобны именованые битовые маски, нафига нужна двоичная запись, что бы подумать об "одном"
Anatoly Podgoretsky (2010-05-11 09:12:00) [10]> andrewtitoff (10.05.2010 23:29:11) [11]
AA будет и это было определено одним взглядом, только я не думал об "одном" и считать тоде не надо
RWolf (2010-05-11 09:12:00) [11]у лпт масса применений, кроме собственно связи с принтером. Так уж сложилось, что они становятся возможны только путём непосредственных манипуляций с портами. Почему это следует называть «через жопу» — не могу понять.
Германн (2010-05-11 03:25:00) [12]
> KilkennyCat © (10.05.10 23:32) [14]
>
>
> > например когда работаешь с ЛПТ портом...
>
> ты хотел сказать, когда лпт используют через жопу.
+1
Германн (2010-05-11 02:57:00) [13]
> andrewtitoff © (10.05.10 23:29) [11]
>
> 2 Юрий Зотов
> 11111 - то в принципе не так страшно, только обычно пользуются
> байтами - а это уже 11111111, а с этим уже сложнее, особенно
> когда думаешь об одном, потом нужно вспомнить сколько 10101010
> будет в шеснадцатиричной и когда сосчитаешь - уже забываешь
> о чем думал.... =))))
>
Бред.
Германн (2010-05-11 02:23:00) [14]В ассемблере?
Нафига в ассемблере для х86 нужен "порядок бит"?
Какое удобство и наглядность? Для наглядности арифметики хватает h-записи. Тут я с ЮЗ вполне согласен.
А вот если нужно на некий вывод порта микропроцессора подать конкретный сигнал, тогда да. Тогда это во многих случаях удобно.
antonn (2010-05-11 01:57:00) [15]
> Есть конечно. Но зачем?
[8]
Германн (2010-05-11 01:34:00) [16]
> KilkennyCat © (11.05.10 01:13) [17]
>
>
> >
> > А вот в ассемблерах, на которых для железа пишут
>
> да ладно, разве в х86-ом асме нет двоичного представления?
>
Есть конечно. Но зачем?
KilkennyCat (2010-05-11 01:13:00) [17]
>
> А вот в ассемблерах, на которых для железа пишут
да ладно, разве в х86-ом асме нет двоичного представления?
и потом, если копать еще глубже, то мы придем к только двоичному.
Германн (2010-05-11 00:52:00) [18]
> А вот в ассемблерах, на которых для железа пишут, имеется
> (обычно) двоичная запись констант.
Трудно сказать для чего она там нужна, если не имеется в виду ассемблер для микропроцессоров.
Игорь Шевченко (2010-05-11 00:41:00) [19]Юрий Зотов © (10.05.10 23:25) [10]
> Когда таблица "двоичный-шестнадцатиричный" в пределах от
> 0000 до 1111 сидит в голове (что наступает очень быстро),
> то шестнадцатиричная запись не менее наглядна, но более
> компактная.
А вот в ассемблерах, на которых для железа пишут, имеется (обычно) двоичная запись констант. Там наверное разработчики ни хрена в наглядности и компактности не понимают.
KilkennyCat (2010-05-10 23:32:00) [20]
> например когда работаешь с ЛПТ портом...
ты хотел сказать, когда лпт используют через жопу.
ибо в нормальном варианте на лпт посылаются нормальные данные, которые уже потом обрабатываются внешним устройством, а не лампочки зажигать.