Структура памяти компьютера и представление чисел Автор Малыгин А.В.
Слишком сложно Реальный компьютер Гипотетический учебный компьютер «Учебный компьютер Нейман» «УК Нейман» «УК Нейман» предназначен для выполнения арифметических расчетов с целыми числами
Джон фон Нейман – американский ученый, который в 1946 году сформулировал основные принципы работы ЭВМ, они во многом сохранились и в современных компьютерах Структура памяти «УК Нейман» Объем памяти – 256 байт Десятичные адреса байтов от 0 до 255 Двоичные адреса байтов от до Шестнадцатеричные адреса байтов от0 доFF
Группы из четырех байтов образуют ячейки памяти. Ячейка – это часть памяти, вмещающая в себя информацию, доступную для обработки отдельной командой процессора. байт ячейка памяти В «УК Нейман» в ячейке памяти может храниться одно число или одна команда программы. Содержимое ячейки памяти называют машинным словом Следовательно, в «УК Нейман» машинное слово – это двоичная информация размером в 32 бита (4 байта).
Схематичная структура памяти «УК Нейман» Адреса ячеекБайты A0B 0C0C0C0D0E0F F8 F9FAFB FC FDFEFF Адрес ячейки – это её номер; значение ячейки – это её содержимое При хранении адреса в памяти он занимает 1 байт (8 бит) Адрес ячейки равен адресу байта с меньшим номером Всего в памяти «УК Нейман» 64 ячейки (256/4)
«УК Нейман» работает только с целыми числами. Наименьшее по абсолютной величине число, хранимое в ячейке памяти, равно нулю (во всех разрядах ноль) Самое большое положительное число имеет такое внутренне представление в двоичной форме: Это же число в шестнадцатеричной форме: 7F FF FF FF В десятичной системе это число равно = Если размер машинного слова равен N бит, то максимальное целое положительное число, хранимое в ячейке памяти, равно 2 N-1 -1 Первый слева двоичный разряд хранит код знака числа. У положи- тельных чисел в этом разряде ноль, у отрицательных - единица
Как получить внутренне представление целого положительного числа 15258? Сначала переведем число в шестнадцатеричную систему =3B9A 16 Затем дополним это число слева нулями до восьми разрядов: B 9A Используя двоично-шестнадцатеричную таблицу, можно расписать двоичное представление этого числа в ячейке памяти:
Получить представление в памяти «УК Нейман» число = DD DD