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

Вниз

степени двоек   Найти похожие ветки 

 
студент   (2007-11-28 10:30) [0]

почему очень часто объявляют массивы размером 1024 или 32768 и т.д. откуда берут эти числа? почему бы вместо 1024 не написать например 1000 или 1100 на всякий случай


 
ыы   (2007-11-28 10:35) [1]


> откуда берут эти числа?
Это степени двоек.


 
Сергей М. ©   (2007-11-28 10:36) [2]

Потому что вся околокомпьютерная кухня пока еще работает на степени двойки)


 
boriskb ©   (2007-11-28 10:39) [3]

> почему очень часто объявляют массивы размером 1024 или 32768
> и т.д.

Кто тебе сказал?
Тебя обманули.
Объявляют массивы таких размерностей, каких требует задача.
И никак иначе


 
Slym ©   (2007-11-28 10:43) [4]

студент   (28.11.07 10:30)
на всякий случай

MaxInt - вот это точно на всякий


 
студент   (2007-11-28 10:45) [5]

я понимаю что это степени двоек! а зачем это нужно? откуда знают что их именно 1024


 
Сергей М. ©   (2007-11-28 10:53) [6]


> зачем это нужно?
> откуда знают что их именно 1024


В каждом конкретном случае решение принимает программист.

Приводи такой случай - и тебе объяснят, почему было принято решение о декларации/использовании данных именно такого размера.


 
palva ©   (2007-11-28 10:54) [7]

> откуда знают что их именно 1024
Просто берут первое пришедшее на ум число. Например, число 1000 - не круглое, поэтому его округляют до 1024.


 
wqeqweqweqw   (2007-11-28 10:54) [8]


> студент  

= ЮЗ, ИШ
сессия началась?


 
Slym ©   (2007-11-28 10:58) [9]

чтоб с размерностью не париться
настоящие мастера делают так:
type
 TMyArray:array[0..0] of byte;


 
БарЛог   (2007-11-28 11:12) [10]

Ничего вы не понимаете! 1024 и 32768 - это степени четвёрки :)


 
tesseract ©   (2007-11-28 11:13) [11]


> я понимаю что это степени двоек! а зачем это нужно? откуда
> знают что их именно 1024


У тебя 1024 двойки за четверть ?

Процессор x86 использует двоичную логику потому и степени двоек.


 
inoremap   (2007-11-28 12:54) [12]

в случае многомерных массивов это позволяет не использовать умножение при доступе к элементам по индексам


 
KSergey ©   (2007-11-28 13:13) [13]

Я вижу тут как рациональные причины, так и вкусовые.
С одной стороны это просто привычка к праивльному пониманию круглых чисел.
С другой - желание более-менее оптимально вписаться размер выделяемых кусков памяти. Которые всегда имеют размер степеней двойки, что как правило, определяется аппаратной частью. Однако понятно, что это актуально не всегда, да и тут слудует тогда уж выделять куски несколько меньшего размера, т.к. система еще допишет служебную информацию.

Ну такое вот мое мнение.



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

Текущий архив: 2007.12.30;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.023 c
3-1188279724
dimaL
2007-08-28 09:42
2007.12.30
FLOAT в Firebird


2-1195211860
Yurij-7
2007-11-16 14:17
2007.12.30
Помогите с запросом


2-1196676131
Dracula
2007-12-03 13:02
2007.12.30
CallBack из DLL


8-1171298890
Zvezda
2007-02-12 19:48
2007.12.30
Движение


3-1188287105
pavel_guzhanov
2007-08-28 11:45
2007.12.30
Как в представлении сделать not null поле?