[ZX]
-
- кстати а что, такие серьезные заковыки ? Во всех микрухах с SPI, I2C умеют передавать и не считают за проблему. Смотреть к примеру на AD9959. - MegaJohn(18.05.2012 08:37)
- Передай float, потом рассказывай. - fk0(18.05.2012 10:20)
- передается как и целое, но упакованное согласно IEEE 754 - MegaJohn(18.05.2012 11:05)
- И шо, таки в формате указано как этот флоат лежит в памяти? - не верю(19.05.2012 05:09,
)
- А в бинарном виде всегда передать-принять можно. - Apтём(19.05.2012 16:40)
- А шо таки не указано? - Apтём(19.05.2012 05:38)
- Нет, не указано и архитектурозависимо. Текстовое представление же одинаково для любой архитектуры. - chelsea(20.05.2012 00:16,
)
- Ну конечно, одинаково. Например формат плаваюшего в русской кодировке пишется через запятую, англоязычный - через точку. - Apтём(20.05.2012 00:28)
- Уверены, что в тексте везде одинаково? Ведь энтих кодировок ... как блох на каштанке. Намедни обсуждали новую версию кейловского MDK в котором комменты и сообщения на русском языке только в кодировке UTF-8 можно сделать, а в CP-1251 не желает. - rezident(20.05.2012 00:24, ссылка)
- Уверен, что как байты в памяти лежат зависит от архитектуры. Про текст всегда договориться можно. А русскую виндовую кодировку действительно лучше не использовать. - chelsea forever(20.05.2012 00:48,
)
- в бинарном сложно договориться про endian ? Высосали проблему из пальца - MegaJohn(20.05.2012 18:34)
- Все бы хорошо, но вот еще какая петрушка - char не всегда 8-ми битным бывает. - rezident(20.05.2012 01:22 - 01:29)
- А уж сколько вариантов для, хотя бы, 32битного флоата.. - manchester(20.05.2012 01:58,
)
- А уж сколько вариантов для, хотя бы, 32битного флоата.. - manchester(20.05.2012 01:58,
- Уверен, что как байты в памяти лежат зависит от архитектуры. Про текст всегда договориться можно. А русскую виндовую кодировку действительно лучше не использовать. - chelsea forever(20.05.2012 00:48,
- А таки не все соотетствуют этому IEEE и много тонкостей, вроде нечисел. Тут через printf|scanf не всегда передашь. - fk0(19.05.2012 12:25)
- это вы намекаете на професеанальные компиляторы для таких же контроллеров? =8) - Mahagam(19.05.2012 23:35)
- Какой там IEEE в IAR'е, а? - fk0(21.05.2012 23:03)
- вроде есть (и не только в иаре) вариант, когда многие проверки опускаются (на NaN, infinite и т.д.), но формат в памяти не меняется. - Mahagam(21.05.2012 23:18)
- Некошерно, но доступно тут strange(69 знак., 22.05.2012 03:19,
)
- Некошерно, но доступно тут strange(69 знак., 22.05.2012 03:19,
- В IAR стандартный float IEEE-754 rezident(526 знак., 21.05.2012 23:08 - 23:10, ссылка, ссылка)
- вроде есть (и не только в иаре) вариант, когда многие проверки опускаются (на NaN, infinite и т.д.), но формат в памяти не меняется. - Mahagam(21.05.2012 23:18)
- Какой там IEEE в IAR'е, а? - fk0(21.05.2012 23:03)
- это вы намекаете на професеанальные компиляторы для таких же контроллеров? =8) - Mahagam(19.05.2012 23:35)
- Нет, не указано и архитектурозависимо. Текстовое представление же одинаково для любой архитектуры. - chelsea(20.05.2012 00:16,
- И шо, таки в формате указано как этот флоат лежит в памяти? - не верю(19.05.2012 05:09,
- передается как и целое, но упакованное согласно IEEE 754 - MegaJohn(18.05.2012 11:05)
- Передай float, потом рассказывай. - fk0(18.05.2012 10:20)
- ключевое слово "кажется". Деятели на C# даже не задумываются что и как работает. Эти все тяжелые regexp - всё их плоды. Для многих уже strlen выполняется за один такт. Куда катится мир. - MegaJohn(17.05.2012 17:27)
- Не надо превращаться в ассемблериста. regexp'ы умеют превращаться в весьма быстрые конечные автоматы. В особо тяжёлых случаях -- с прямой генерацией C-кода и пропусканием его через компилятор перед обработкой данных. Самодельный разбор BER fk0(425 знак., 17.05.2012 17:38)
- однажды в исходниках к одному батарейному девайсу в парсере встретил for( ; i < strlen( ); i++ ) { bla-bla }. Аж поплохело - MegaJohn(17.05.2012 17:44)
- Случаев крайнего идиотизма не надо. Да и аж 0.1% к разряду батареи. Неоптимальные алгоритмы в других местах дадут все 90%. Бороться не за что. Тем более что попал мимо -- GCC на уровне -O1 выоптимизирует этот strlen нафиг: fk0(1841 знак., 17.05.2012 18:05)
- Лень профессиональный асм изучать. Вот такой пропусти-ка. И сообщи результат в циклах. Для AVR+IAR-speed optimize у меня получилось. v1 = 285200 циклов ! v2 = 2813, v3 = 1403 MegaJohn(652 знак., 18.05.2012 11:39)
- Если ты не знаком с асмом x86 и не умеешь написать hello world в debug.exe то о чём вообще говорить? А проблема как всегда в ассемблерах. Микрочиповский компилятор (ещё то говно) тоже выкидывает strlen нафиг. Я не поленился и AVR-GCC проверил. fk0(1022 знак., 21.05.2012 22:52 - 23:02)
- да, подтверждаю что GCC думает за человека, и гораздо лучше оптимизнул код. Про говно выше написано - MegaJohn(24.05.2012 12:30)
- Если ты не знаком с асмом x86 и не умеешь написать hello world в debug.exe то о чём вообще говорить? А проблема как всегда в ассемблерах. Микрочиповский компилятор (ещё то говно) тоже выкидывает strlen нафиг. Я не поленился и AVR-GCC проверил. fk0(1022 знак., 21.05.2012 22:52 - 23:02)
- был не GCC и проект даже не оптимизился. Вот так вот делается. - MegaJohn(17.05.2012 18:38)
- Лень профессиональный асм изучать. Вот такой пропусти-ка. И сообщи результат в циклах. Для AVR+IAR-speed optimize у меня получилось. v1 = 285200 циклов ! v2 = 2813, v3 = 1403 MegaJohn(652 знак., 18.05.2012 11:39)
- Случаев крайнего идиотизма не надо. Да и аж 0.1% к разряду батареи. Неоптимальные алгоритмы в других местах дадут все 90%. Бороться не за что. Тем более что попал мимо -- GCC на уровне -O1 выоптимизирует этот strlen нафиг: fk0(1841 знак., 17.05.2012 18:05)
- однажды в исходниках к одному батарейному девайсу в парсере встретил for( ; i < strlen( ); i++ ) { bla-bla }. Аж поплохело - MegaJohn(17.05.2012 17:44)
- Не надо превращаться в ассемблериста. regexp'ы умеют превращаться в весьма быстрые конечные автоматы. В особо тяжёлых случаях -- с прямой генерацией C-кода и пропусканием его через компилятор перед обработкой данных. Самодельный разбор BER fk0(425 знак., 17.05.2012 17:38)
- кстати а что, такие серьезные заковыки ? Во всех микрухах с SPI, I2C умеют передавать и не считают за проблему. Смотреть к примеру на AD9959. - MegaJohn(18.05.2012 08:37)