Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

Начинающим программистам. Этап 1   Найти похожие ветки 

 
al_   (2002-11-11 19:54) [80]


> Набережных С. (08.11.02 12:22)

Спасибки!!! А у меня еще есть один-два вопроса!
1. Как понять "Уметь проверить и выставить любой бит в любое значение"?
2. Пойдет ли книга, В.В.Фараонов "Delphi 6 - учебный курс" М.: 2001 г., для обучения?


 
Юрий Зотов   (2002-11-11 20:36) [81]

1. Это значит: дано N-битное целое число и номер бита i (i < N).
a). Определить, в каком состоянии находится этот бит (0 или 1).
б). Выставить этот бит в состояние 0.
в). Выставить этот бит в состояние 1.

Не обязательно решать задачу в общем виде, достаточно решить ее на нескольких примерах (т.е., взяв конкретные значения N и i).


2. Конкретно эту книгу я не знаю, но в тех книгах В.В.Фаронова, которые я видел, большое внимание уделено самому языку Паскаль. Если и в этой книге так же, то это как раз то, что нужно.


 
al_   (2002-11-12 00:20) [82]


> Юрий Зотов © (11.11.02 20:36)

:( Первый пункт не ясен. Я чего-то недопонимаю :(


 
MBo   (2002-11-12 06:24) [83]

>al_
Пусть у нас имеется Integer число 17=$11=10001b
чтобы узнать, в каком состоянии находится 5-й справа бит (при общепринятой нумерации с нуля он называется 4-ым), нужно извлечь его, игнорируя остальные. Для этого производим такую логическую операцию, при которой остальные биты сбрасываются в 0, а нужный не меняется. Это будет логическое AND c 10000b.
10001b and 10000b = 10000b
а
10001b and 1000b =0

чтобы легко задать нужный бит маски, получаем ее путем сдвига влево числа 1 (у которого установлен только нулевой бит) на нужное число позиций. В результате:
if ( X and (1 shl 4) ) <>0 (в условии можно вместо неравенства и так: (...)=$10 )
then 4 бит установлен в 1

Про выставление бита сам попробуй


 
AndrewVolkov   (2002-11-24 00:56) [84]

>не понял как работать с десячной дробью

Пpи переводе правильной десятичной дpоби в систему счисления с основанием q необходимо сначала саму дробь, а затем дробные части всех последующих произведений последовательно умножать на q, отделяя после каждого умножения целую часть пpоизведения. Число в новой системе счисления записывается как последовательность полученных целых частей пpоизведения.

Умножение пpоизводится до тех поp, пока дpобная часть пpоизведения не станет pавной нулю. Это значит, что сделан точный пеpевод. В пpотивном случае пеpевод осуществляется до заданной точности. Достаточно того количества цифp в pезультате, котоpое поместится в ячейку.

в частности как из 0.35 получили 0,01011b

Я не совсем понял про пункт останова
"пока дpобная часть пpоизведения не станет pавной нулю"

0.35*2=0.7 -> 0
0.7*2 =1.4 -> 1
0.4*2 =0.8 -> 0
0.8*2 =1.6 -> 1
0.6*2 =1.2 -> 1


она же не стала = 0 ->0.2
можно же дальше продолжать
0.2*2 = 0.4 ->0
0.4*2 = 0.8 ->0
0.8*2 =1.6 -> 1
0.6*2 =1.2 -> 1

и так в цикле... где останавливаться???


 
AndrewVolkov   (2002-11-24 01:53) [85]

И насчет VM_KeyDown подскажите, как с ним работать???
У меня он все время 256 дает???


 
Anatoly Podgoretsky   (2002-11-24 09:04) [86]

AndrewVolkov (24.11.02 00:56)
"В пpотивном случае пеpевод осуществляется до заданной точности"
В данном случае точность 6 бит



Страницы: 1 2 3 вся ветка

Форум: "Потрепаться";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.59 MB
Время: 0.012 c
14-51911
SPeller
2002-11-24 13:06
2002.12.16
Избавиться от пункта меню в IE


1-51738
Sergey123
2002-12-04 10:43
2002.12.16
Отрисовка на Bitmap


14-51895
SPeller
2002-11-22 02:23
2002.12.16
Глюк....


3-51578
Брат
2002-11-27 12:14
2002.12.16
Можно ли из Grid выбрать данные?


1-51780
Prok12
2002-12-04 10:38
2002.12.16
Как рисовать на





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский