Форум программистов, компьютерный форум CyberForum.ru

Степень двойки для отражения размера памяти - C++

Восстановить пароль Регистрация
 
stawerfar
 Аватар для stawerfar
141 / 55 / 4
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
02.05.2014, 23:14     Степень двойки для отражения размера памяти #1
Коллеги глупый но все же интересный вопрос! Один гибибайт состоит из 1073741824 байт памяти. Почему разработчики выбрали такое странное число (степень двойки) вместо какого нибудь хорошо запоминающегося, например 1000000000? Это просто табу для удобства или есть другое объяснение этому феномену? Я лично не вижу ни аппаратных ни программных преград для этого( даже несмотря на двоичную систему счисления, это ни как не мешает группировать байты в произвольном для нас блоке).
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2014, 23:14     Степень двойки для отражения размера памяти
Посмотрите здесь:

C++ Найти степень двойки
C++ Степень двойки
Максимальная степень двойки C++
степень двойки C++
Степень двойки в степени десятки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Melg
416 / 152 / 62
Регистрация: 23.09.2013
Сообщений: 306
02.05.2014, 23:41     Степень двойки для отражения размера памяти #2
На мой взгляд всё упирается в способ организации доступа к памяти, и в частности способу адресации памяти.
zer0mail
2187 / 1870 / 187
Регистрация: 03.07.2012
Сообщений: 6,650
Записей в блоге: 1
02.05.2014, 23:42     Степень двойки для отражения размера памяти #3
1.Глупый вопрос не может быть интересным.
2.Почему именно 2^30 вызывает неприятие, к 2^10 и 2^20 замечаний нет?
3.Для 1000000000 давно есть имя (миллиард), зачем плодить имена?
stawerfar
 Аватар для stawerfar
141 / 55 / 4
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
02.05.2014, 23:51  [ТС]     Степень двойки для отражения размера памяти #4
По моему ты вопроса не понял

Добавлено через 5 минут
Melg объясни что ты конкретно имел введу
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,899
Записей в блоге: 2
Завершенные тесты: 1
02.05.2014, 23:53     Степень двойки для отражения размера памяти #5
Википедия:
Гигабайт (обозначение Гбайт) — кратная единица измерения количества информации, равная 230 = 1 073 741 824 байт[1] (согласно предложению международной электротехнической комиссии является гибибайтом). Согласно ГОСТ 8.417-2002 термин гигабайт с обозначением "ГБ" равен 109 = 1 000 000 000 байт[1].

На территории Российской федерации термин Гбайт обязан использоваться для обозначения 230 = 1 073 741 824 байт, согласно постановлению Правительства РФ, принятому в 2009 году:
stawerfar
 Аватар для stawerfar
141 / 55 / 4
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
03.05.2014, 00:03  [ТС]     Степень двойки для отражения размера памяти #6
Глупый вопрос не может быть интересным? Ну по крайней мере ты на него ответа внятного не дал.

Добавлено через 8 минут
Croessmah, вопрос почему они предложили использовать степень двойки и чем они это аргументировали
Ps в приведенная ссылка не дает ответа на поставленный вопрос
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
03.05.2014, 00:08     Степень двойки для отражения размера памяти #7
Зачем мешать десятичную и двоичную с.с., если речь конечно не о производителях жестких дисков
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2014, 12:35     Степень двойки для отражения размера памяти
Еще ссылки по теме:

Модульное деление на степень двойки C++
Сделать с помощью массива возведение двойки в произвольную степень. C++
C++ Возведение двойки в большую степень (длинное число)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
gng
605 / 451 / 122
Регистрация: 08.09.2013
Сообщений: 1,152
03.05.2014, 12:35     Степень двойки для отражения размера памяти #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от stawerfar Посмотреть сообщение
Я лично не вижу ни аппаратных ни программных преград для этого( даже несмотря на двоичную систему счисления, это ни как не мешает группировать байты в произвольном для нас блоке).
Вам пояснили в первом же ответе.
Если, к примеру, ширина шины адреса = 32, то можно адресовать 2**32 = 4GiB памяти (Или 4Гбайт по нашему). Это число - целое и удобное. При расчете 1G=10**9 byte при покупке планки памяти, ее объем задавался бы дробным числом, что неудобно.

Вспомнился старый анекдот в форме риторического вопроса.
Чем отличается начинающий программист от продвинутого?
Начинающий считает, что в одном килобайте 1000 байт, а продвинутый,что в одном километре - 1024 метра.
Yandex
Объявления
03.05.2014, 12:35     Степень двойки для отражения размера памяти
Ответ Создать тему
Опции темы

Текущее время: 02:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru