roboforum.ru

Технический форум по робототехнике.

 

как узнать что число стало именно отрицательным?

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

как узнать что число стало именно отрицательным?

Сообщение к561ЛА7 » 25 сен 2010, 22:01

Перельманы! :roll:
код a=b-1
выдает на выходе
4,3,2,1,0,255,254.... и так по кругу.
а можно ли сделать так чтобы
4,3,2,1,0,-1,-2,-3....?

тоесть перескочило через ноль, но сам ноль не отлавливать.
И число с предыдущим - не сравнивать
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: как узнать что число стало именно отрицательным?

Сообщение Michael_K » 25 сен 2010, 22:40

на чем пишем?
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: как узнать что число стало именно отрицательным?

Сообщение к561ЛА7 » 25 сен 2010, 22:43

С++ код вижн
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: как узнать что число стало именно отрицательным?

Сообщение MEXAHuK » 25 сен 2010, 23:33

вероятно, b (и a) имеет тип unsigned char (0 to 255) ?
в таком случае имеет смысл изменить тип b (и a) на (long) int ?
Аватара пользователя
MEXAHuK
 
Сообщения: 216
Зарегистрирован: 07 янв 2005, 23:39
Откуда: г.Норильск, Россия
прог. языки: Pascal, C, C++
ФИО: Раф Попов

Re: как узнать что число стало именно отрицательным?

Сообщение к561ЛА7 » 26 сен 2010, 09:33

MEXAHuK писал(а):вероятно, b (и a) имеет тип unsigned char (0 to 255) ?
в таком случае имеет смысл изменить тип b (и a) на (long) int ?


Большое человеческое спасибо.
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: как узнать что число стало именно отрицательным?

Сообщение Сергей » 26 сен 2010, 11:09

Кстати, с каких это пор КодВизион поддерживает С++? :D
Сергей
 
Сообщения: 3741
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: как узнать что число стало именно отрицательным?

Сообщение avr123.nm.ru » 26 сен 2010, 11:42

С тех пор как люди не желают читать, все больше сочинительствуют.
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14200
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: как узнать что число стало именно отрицательным?

Сообщение Виталий » 26 сен 2010, 12:29

А еще есть такие, которые вроде и читают, но получается как в поговорке "смотрю в книгу, а вижу фигу". :D
Не поленился, зашел на http://www.codevision.be/ большими буквами пишут, что "High Performance ANSI C Compiler for Atmel AVR" (видимо проблема в том, что шрифт не разноцветный и буквы маловаты). :ROFL:
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: как узнать что число стало именно отрицательным?

Сообщение MEXAHuK » 26 сен 2010, 15:20

к561ЛА7 писал(а):
MEXAHuK писал(а):вероятно, b (и a) имеет тип unsigned char (0 to 255) ?
в таком случае имеет смысл изменить тип b (и a) на (long) int ?


Большое человеческое спасибо.


Всегда рад помочь :)
Аватара пользователя
MEXAHuK
 
Сообщения: 216
Зарегистрирован: 07 янв 2005, 23:39
Откуда: г.Норильск, Россия
прог. языки: Pascal, C, C++
ФИО: Раф Попов

Re: как узнать что число стало именно отрицательным?

Сообщение $ilent » 27 сен 2010, 21:45

Проверить регистр статус, бит "N"
Код: Выделить всёРазвернуть
Arithmetic Logic Unit – ALU

Status Register:
• Bit 2 – N: Negative Flag
The Negative Flag N indicates a negative result in an arithmetic or logic operation. See
the “Instruction Set Description” for detailed information.
$ilent
 


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Mail.ru counter