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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Nikitko_Cent
136 / 106 / 10
Регистрация: 27.10.2011
Сообщений: 660
Завершенные тесты: 2
#1

Распределение памяти под объекты числовых типов. Не могу понять - C++

10.12.2012, 15:45. Просмотров 322. Ответов 1
Метки нет (Все метки)

Может быть немного не в тему пишу, т.к. этот вопрос не относится конкретно к языку С++, просто столкнулся с этим, когда начал изучать этот язык. Буду объяснять суть проблемы на языке С++. Допустим, возьмем такой тип как "signed int". Объект этого типа занимает в памяти 16 бит. Диапазон значений составляет -32768 - 32767. Насколько я знаю, в любых signed типах первый бит отводится под знак числа (+ или -), т.е. в signed int под само число будет отведено 15 бит памяти. Теперь рассмотрим число 32768. В двоичной системе это число будет являться числом 1000 0000 0000 0000. Т.е. занимает 16 бит памяти. Тогда как число -32768 умещается в signed int, если только 32768 занимает 16 бит, куда впихнуть еще и знак числа?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2012, 15:45     Распределение памяти под объекты числовых типов. Не могу понять
Посмотрите здесь:

Перераспределение памяти с new под объекты - C++
есть класс #include <iostream> #include <string> using namespace std; class tel_book { private: char *FIO; int count...

не могу понять ошибку типов переменных при деление идет обращение в ноль - C++
проблема в том что при деление у ми идет обращение в 0, хотя по сути его не должно быть const int m=10, n=1000; // по заданию...

Не могу понять в чем утечка памяти - C++
bool CAvPlatform::DetectGameFolderAccessRights() { DWORD DesiredAccess = FILE_GENERIC_WRITE; DWORD GrantedAccess = 0; ...

Ошибка памяти при выполнении - не могу понять в чём дело - C++
Добрый день. Есть следующий код: #include <iostream> using namespace std; class Matrix { private: int* arr_ptr; ...

Есть книжка но не могу понять она подходит под описание - C++
Есть книжка но не могу понять она подходит под описание среды visual studio 2010 c++ ? Я вобщем столкнулся на таком случае, по заданию...

Размеры числовых типов данных - C++
Всем привет. Вопрос: Почему мой код отображает с ошибкой только значения длины числовых данных для long, unsigned long, long double. а...

Выделение памяти под массив в классе. Почему не могу правильно выделить? - C++
Все привет! не могу понять почему в классе не получается выделить память из стека для массива. Есть класс: Надо чтоб конструктор класса...

Объекты и приведение типов - C++
Добрый день. Я написал класс, на подобии std::string, только для типа wchar_t. Вот сам класс: #pragma once #include <iostream> ...

Считать объекты из файла разных типов - C++
Добрый день, имеется текстовый файл такого вида: fgfd 32 cxv 54 43 hmgg 65 54 23

объекты двух типов SymbString и DecString - C++
Написать программу, демонстрирующую работу с объектами двух типов: SymbString(символьная строка) и DecString(десятичная строка), для чего...

Объекты разных типов в одном контейнере и c++ 11 auto - C++
Собственно дабы упростить себе жизнь, решил использовать auto но столкнулся с траблом... class TWireObj{ public: TWireObj(auto...

Зачем нужно возвращать ссылку на объекты потоковых типов? - C++
В книжке Герберта Шилдта четко и ясно указано, что для того, чтобы перегружать операции ввода-вывода, надо возвращать ссылку на объект...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13052 / 7315 / 814
Регистрация: 27.09.2012
Сообщений: 18,052
Записей в блоге: 3
Завершенные тесты: 1
10.12.2012, 16:04     Распределение памяти под объекты числовых типов. Не могу понять #2
Цитата Сообщение от Nikitko_Cent Посмотреть сообщение
Тогда как число -32768 умещается в signed int, если только 32768 занимает 16 бит
Может стоит еще почитать про то, как именно представляются отрицательные числа?
Цитата Сообщение от Nikitko_Cent Посмотреть сообщение
если только 32768
Цитата Сообщение от Nikitko_Cent Посмотреть сообщение
Диапазон значений составляет -32768 - 32767
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru