Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Beginner Гость
|
Добавлено: Пн Янв 27 2003 12:47 Заголовок сообщения: Вот такое выражение... |
|
|
Очень часто в текстах программ встречаю выражение вида: (a + b - 1) & ~(b - 1). Мне подсказали, что оно дает наименьшее кратное относительно а. Но хоть убейте не понимаю, КАК ТАК ПРОИСХОДИТ, ЧТО (a + b - 1) & ~(b - 1) всегда дает наим. кратное. Помогите!
И еще недавно наткунлся на такое: (nbytes + sizeof(Header) - 1) / sizeof(Header) + 1. Видимо, из той же оперы... |
|
Вернуться к началу |
|
|
xAL
Зарегистрирован: 31.01.2003 Сообщения: 27 Откуда: Челябинск
|
Добавлено: Ср Янв 29 2003 09:45 Заголовок сообщения: Re: Вот такое выражение... |
|
|
Гм. Уточни, возможно выражение какое-то другое, или оно что-то другое означает?
Насчет второго ((nbytes + sizeof(Header) - 1) / sizeof(Header) + 1) - может быть второй sizeof не от Header, а от чего-нибудь другого? Иначе было-бы проще записать (nbytes-1)/sizeof(Header)+2. А вообще, это похоже на подсчет количества пакетов длиной второго sizeof`а, чтобы передать сообщение длиной nbytes+sizeof(Header) (в смысле вместе с заголовком).
Но все-таки, все зависит от контекста. |
|
Вернуться к началу |
|
|
|