Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2009, 13:42   #1
k1r1ch
ACM!
Форумчанин
 
Аватар для k1r1ch
 
Регистрация: 19.06.2009
Сообщений: 382
Вопрос Возможна ли запись типа integer[5]?

Вот например у меня есть переменная, которая меняется только в рамках 0..5. Вот вопрос в том, почему я должен занимать Byte памяти, можно ли взять полбайта или только три бита на переменную?
k1r1ch вне форума Ответить с цитированием
Старый 01.10.2009, 13:44   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Это неэффективно, не по скорости не по объему кода. И память все равно организована байтами, а не битами. То что ты выйграешь на битах, проиграешь в объеме программы.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 01.10.2009, 13:46   #3
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

MyPolBita : Array [1..5] of (как там бит пишется :D );

адд: ахахах я бред какойто написал

ТС, не парься, я уверен что в твоей программе столько неоптимизированых функций и пр., что какието "полбайта" никто даже не заметит

Последний раз редактировалось Вавел из ГМТУ; 01.10.2009 в 13:57.
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 01.10.2009, 14:12   #4
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Ну засунь в переменную 2 значения по 4 бита, экономия
пыщь
JTG вне форума Ответить с цитированием
Старый 01.10.2009, 14:20   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Вот вопрос в том, почему я должен занимать Byte памяти, можно ли взять полбайта или только три бита на переменную?
А что у тебя памяти всего 10 Кбайт в компе?
Зачем такая экономия? К тому же процессору твоя экономия только мешает, ибо он все равно 4мя байтами работать привык.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.10.2009, 14:23   #6
k1r1ch
ACM!
Форумчанин
 
Аватар для k1r1ch
 
Регистрация: 19.06.2009
Сообщений: 382
Радость

Не-не, я чисто из научного интереса! Спасибо всем!
k1r1ch вне форума Ответить с цитированием
Старый 01.10.2009, 14:30   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Тогда вот тебе раз пример:
Код:
  var
  s:set of 0..5;
begin
 Include(s,3);
  { TODO -oUser -cConsole Main : Insert code here }
end.
А Packed Record будет вторым.
Оба в целом работают с битами.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись числа типа инт в ячейку двумерного массива типа char AxenicX Помощь студентам 1 25.09.2009 00:35
Запись структуры TList в файл, проблема с длинными строками типа AnsiString Xardas Общие вопросы Delphi 2 24.05.2009 20:18
Задача на применение пользовательского типа запись Маськ@ Паскаль, Turbo Pascal, PascalABC.NET 0 07.05.2009 22:28
TurboPascal - Применение типа "Запись" RazdoR Помощь студентам 7 06.05.2009 19:15
задать массив типа X: array [0..N] of integer -где N переменная читаеться из EditBox Kivin13 Общие вопросы Delphi 22 06.09.2007 09:25