Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.16;
Скачать: CL | DM;

Вниз

Начинающим программистам. Этап 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;
Скачать: CL | DM;

Наверх




Память: 0.61 MB
Время: 0.02 c
1-51740
AndrewCh
2002-12-06 14:10
2002.12.16
Как определить размер каталога с вложенными подкаталогами?


1-51832
3asys
2002-12-05 15:09
2002.12.16
Ошибка освобождения RxRichEdit


7-51988
Геннадий
2002-10-08 16:54
2002.12.16
А как узнать входящий/исходящий трафик Интернета?


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


1-51662
white
2002-12-05 15:39
2002.12.16
Random