Странный вопрос. В шапке я вряд ли могу уместить суть вопроса, потому основное будет здесь.
К примеру игра хранит множество значений в себе. Где хранит? Как хранит?
Если же открыть тот же Cheat Engine, то можно заметить номера по типу 1AD829F и т. д. В интернете вычитал, что это смещение, т. е. некий "порядковый номер". Но что это такое само по себе? Вычитал что это 16ричная система счисления, но чего? Байтов? Но как эти байты хранятся? По типу:
(Первое значение) 0000001 байт
(Второе значение) 0000002 байт
(Миллионное значение (перевод из интернета)) 00F4240 байт
Или как?
А я ведь ещё слышал, что определённые данные могут храниться в нескольких байтах, это как? (Первое и второе значения) 00000010000002 байтов?
Всё это неизведанно и непонятно для меня...
Программное обеспечение
Как устроена память в программах
Открой datasheet на 8-разрядный микроконтроллер - там организация памяти предельно проста, а объем её начинается с 64 байт у AtTiny13, например. Разберешься с ней - переходи уже к более серьезным устройствам, - 32-разрядные микроконтроллеры уже по сути небольшие компьютеры.
Лекции про структуру ОЗУ, кэш, кучу, страницы, адреса и прочее, да еще и применительно к играм, тебе тут никто написывать не будет
Лекции про структуру ОЗУ, кэш, кучу, страницы, адреса и прочее, да еще и применительно к играм, тебе тут никто написывать не будет
Макс Якимов
Извиняюсь, но я в таких сложных штуках как "микроконтроллер" не разбираюсь (признаться честно, я впервые это слово слышу). Попробую поискать инструкцию, спасибо за ответ.
Про 16-ричную систему счисления ответ: это такая же система счисления как и все.
Нам привычна десятиричная система. Считаем до десяти так: 0123456789. Потом для продолжения счёта записываем старший разряд "1" слева, а справа снова перебираем 0123456789. В шеснадцатиричной системе ряд длиннее: 0123456789ABCDEF. То есть всего 16 позиций, потом - перенос. Можно придумать любую систему счислений, но конкретно двоичная и шеснадцатиричная удобна в программировании.
Про память.
Есть оперативка. В неё ложатся "числа". Про MMU и трансляцию адресов я умолчу...
Одно число может быть представлено разным количеством байт. Один байт кодирует 256 значений (то есть цифру от 0 до 255 включительно).
Два байта кодируют 256^2 значений = 65536.
Четыре байта кодируют 256^4 = 4 млрд значений. Программист обычно выбирает разрядность числа для его хранения. Если нужно хранить возраст человека - достаточно хранить 1 байт. Если число звёзд на небе - не менее 4 байт. Все эти числа, которые нужно хранить и обрабатывать - ложатся последовательно в памяти программы. Программа знает по какому адресу лежит нужное в определённый момент число, она его читает по этому адресу или пишет.
Нам привычна десятиричная система. Считаем до десяти так: 0123456789. Потом для продолжения счёта записываем старший разряд "1" слева, а справа снова перебираем 0123456789. В шеснадцатиричной системе ряд длиннее: 0123456789ABCDEF. То есть всего 16 позиций, потом - перенос. Можно придумать любую систему счислений, но конкретно двоичная и шеснадцатиричная удобна в программировании.
Про память.
Есть оперативка. В неё ложатся "числа". Про MMU и трансляцию адресов я умолчу...
Одно число может быть представлено разным количеством байт. Один байт кодирует 256 значений (то есть цифру от 0 до 255 включительно).
Два байта кодируют 256^2 значений = 65536.
Четыре байта кодируют 256^4 = 4 млрд значений. Программист обычно выбирает разрядность числа для его хранения. Если нужно хранить возраст человека - достаточно хранить 1 байт. Если число звёзд на небе - не менее 4 байт. Все эти числа, которые нужно хранить и обрабатывать - ложатся последовательно в памяти программы. Программа знает по какому адресу лежит нужное в определённый момент число, она его читает по этому адресу или пишет.
Похожие вопросы
- Вопрос про компьютеры и программы. В частности, про количество памяти и браузеры в течении времени. ++
- Как устроена файловая система в Линукс ? Как она устанавливает программы ?
- нужна программа, что б очистить память смартфона от ненужного мусора.
- Есть ли такие программы, которые увеличивают максимальный объём оперативной памяти в Windows XP
- недостаточно памяти для запуска программы.Закройте одну или несколько программ или повторите попытку. что за ошибка,пане
- Достало то, что все антивирусы устроены так, что принимают за вирусы многие программы для редактирования музыки и видео!
- Перенаправление оперативной памяти. существует ли программа Перенаправления оперативной памяти?
- Скажите а есть такая программа, что бы самой отрегулировать память на компе? В общем добавить гигов на диск С?
- Какая самая эффективная, по вашему опыту, программа для восстановления данных с отформатированной карты памяти?
- где найти русский орфоэпический словарь с озвучкой, меня устроят и онлайн версия, и программа