|
|
  |
Глюк дебаггера Proteus 7.4 SP4 с float? |
|
|
|
Jun 1 2010, 17:56
|
Группа: Новичок
Сообщений: 2
Регистрация: 1-06-10
Пользователь №: 57 685

|
Доброго дня! Proteus не показывает значение переменных типа float в пошаговом режиме. Как сделать чтобы отображал? Спасибо!
Эскизы прикрепленных изображений
|
|
|
|
|
Jun 3 2010, 11:15
|

Частый гость
 
Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618

|
Цитата(_Pasha @ Jun 3 2010, 03:23)  Нафига ея отключать?  Так эта дла тага, чтабы прогу пооотлаживать. С включенной оптимизацией по С коду сильно не попрыгаешь. Да и сама переменная может в регистрах проца оказаться. Весь вопрос в том Цитата Как сделать чтобы отображал? , а какой тип переменной использовать, со временем, человек сам научится.
|
|
|
|
|
Jun 4 2010, 04:12
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(Marian @ Jun 3 2010, 15:15)  Так эта дла тага, чтабы прогу пооотлаживать. А с оптимизацией она не отлаживается? Цитата(Marian @ Jun 3 2010, 15:15)  С включенной оптимизацией по С коду сильно не попрыгаешь. Это еще почему? Вообще-то отлаживать ее надо в том виде, в каком ей предстоит работать. Цитата(Marian @ Jun 3 2010, 15:15)  Да и сама переменная может в регистрах проца оказаться. И что? Это вызывает какие-то проблемы? Я, например, наоборот - огорчаюсь если какая-то переменная оказывается в памяти и начинаю думать что бы такого сделать, чтобы компилятор перенес ее в регистр.
|
|
|
|
|
Jun 4 2010, 18:23
|

Местный
  
Группа: Свой
Сообщений: 329
Регистрация: 22-06-04
Пользователь №: 124

|
Цитата А с оптимизацией она не отлаживается? А вы не понимаете, что этим хотели сказать? Цитата Это еще почему? Вообще-то отлаживать ее надо в том виде, в каком ей предстоит работать. Работать "она" может и без оптимизации. Цитата Я, например, наоборот - огорчаюсь если какая-то переменная оказывается в памяти и начинаю думать что бы такого сделать, чтобы компилятор перенес ее в регистр. Вы, наверное, хотели-бы в идеале использовать uC без RAM ... 777777Мой флуд смахивает на ваш
--------------------
Талант не пропить ...
|
|
|
|
|
Jun 4 2010, 20:26
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(777777 @ Jun 3 2010, 12:02)  Надо предложить модераторам ввести в правила пункт: "запрещается советовать отключать оптимизацию компиляторов".  Хорошее предложение  . Одобряю. Цитата(Hmm @ Jun 4 2010, 21:23)  А вы не понимаете, что этим хотели сказать? Я понимаю  отлаживать не общую работоспособность чего-либо а 2x2=?  .
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jun 5 2010, 12:24
|

Частый гость
 
Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618

|
Цитата(777777 @ Jun 4 2010, 07:12)  А с оптимизацией она не отлаживается? Не отлаживается. Работать прога сможет, но как вы узнаете, не прибегая к ассемблеру, что она конкретно, в этот момент делает? Если у вас есть другие, более удобные методы отладки, поделитесь. Цитата Вообще-то отлаживать ее надо в том виде, в каком ей предстоит работать. Если вам так надо, пожалуйста. Но гораздо удобнее отладить прогу "как она есть", а перед заливкой в проц., скомпилировать с включенной оптимизацией. Цитата(zltigo @ Jun 4 2010, 23:26)  Хорошее предложение  . Одобряю. Интересно, чем оно вам понравилось?
|
|
|
|
|
Jun 5 2010, 14:22
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(Marian @ Jun 5 2010, 16:24)  Не отлаживается. Работать прога сможет, но как вы узнаете, не прибегая к ассемблеру, что она конкретно, в этот момент делает? Убей не пойму - а что мешает прибегнуть к ассемблеру? Но и это требуется крайне редко - я обычно отлаживаю программу прямо в сишном тексте, отладчик позволяет шагать по строкам прогрммы, смотреть значения переменных и т.п. - что еще нужно для оладки? Да, иногда компилятор перетасовывает программу и при пошговой отладке она иногда "прыгает" в неожиданные места. Но ничего страшного не происходит, при ближайшем рассмотрении становится понятен ход "мыслей" оптимизатора . Цитата(Marian @ Jun 5 2010, 16:24)  Если вам так надо, пожалуйста. Но гораздо удобнее отладить прогу "как она есть", а перед заливкой в проц., скомпилировать с включенной оптимизацией. Если ваша программа нагружает процессор на 1%, то наверное можно. Но обычно процессор выбирается так, чтобы он был загружен на 20...30%, а если проводится а поскольку отключение оптимизации делает программу медленнее раз в 5...10, то она становится практически неработоспособной - не успевает. То же самое относится к ее размеру - если без оптимзации она не влезет в память - как ее отладить? Цитата(Marian @ Jun 5 2010, 16:24)  Интересно, чем оно вам понравилось? Наверное тем, что совет отключать оптимизацию является вредным.
|
|
|
|
|
Jun 5 2010, 14:23
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Marian @ Jun 5 2010, 15:24)  Интересно, чем оно вам понравилось? Правильным подходом к делу, при котором прежде всего нужно думать и писать программы, а не исследовать отладчиком что же это такое получилось и латать некий исходник из каких-то строчек. Это для латания жизненно необходимо соответствие какой-то отдельной строчки, какому-то отдельному "результату", ибо латающий практически никогда не уверен, в том, что он написал и уж тем более не представляет, как его понял (а действительно 2+2=4?) компилятор. При этом его мышление действительно ограничено разрозненными строчками и проанализировать десяток-другой уже не под силу. Вот на такой благодатной почве и растут не выпускающие отладчика из рук враги оптимизаций, ибо латанный-перелатанный подогнанный под ответ в окошке отладчика исходник при оптимизации рассыпается и тут уж начинаются обильные байки о глюках компиляторов  . Если человек может с уверенностью без ошибок написать десяток-другой строчек, а в том случае, если и ошибся банально их прочитать и найти ошибку, то оптимизация у него включена и настроена с самого начала. Ну а уж про критические по времени исполнения куски кода вообще и говорить нечего.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|