2014-11-29 4 views
0

Я имею дело со следующей проблемой:Инструкция Кодирование в отношении языка MARIE Ассамблеи

A 1 адрес компьютера, чья команда может содержать не более одного операнда адреса. MARIE - пример такого компьютера. Обычно каждая команда хранится как одно слово в памяти. Предположим следующие детали машины.

(i) Слово содержит n бит, а k бит (k < n) используются для кодирования каждого кода операции. Остальные разряды используются для указания адресов (адресов) памяти.

(ii) В ISA имеется 100 различных кодов операций.

(iii) Самая большая программа требует 128M слов (128x2^20) памяти для запуска.

(a) Какое минимальное значение k требуется? Каково минимальное значение n ? Сохраняя минимальное значение k, каково максимальное число кодов операций , которые могут использоваться?

(b) Если размер каждого слова должен быть целым числом байтов, то каково должно быть значение минимального значения n? Что такое самая большая память, которую можно использовать в этом компьютере?

До сих пор я придумал, но я немного сомневаюсь в своем ответе: a) Минимальное количество k равно 7, чтобы иметь 100 кодов операций, которые вам понадобятся 7 бит в поле кода операции. Минимальное число n равно 9 (я не уверен, что это 9 или 8, поскольку в вопросе говорится, что «Сохранение минимального значения k, k является битами кода операции»). Я также не уверен, что этот вопрос неявно говорит о том, что слово имеет 16 бит или есть еще.

Для b Я смущен относительно природы вопроса, говорит ли он, что новое слово будет иметь 8 бит или это слово сделано из битов? Ex: 1 слово (16 бит) - это 2 целых байта. Также я немного смущен относительно того, какой максимальный размер программы используется для (128 М слов) при попытке решить эту проблему.

ответ

0

Вы получили правильную часть k=7. пробел для кодов операций 2^7=128. Что касается n, вам нужно подумать, сколько памяти у вас есть песчаники Это указано как 128x2^20 слов, то есть 2^27, поэтому вам нужно как минимум n=27. Общий размер команды тогда 34, который не кратен 8. Если вы округлите это до 40, вы получите n=33, что дает максимальную адресуемую память 2^33=8G words.

+0

Ах, я понимаю. Я нашел этот вопрос очень расплывчатым и не понимал этого, но это делает много смысла. Благодаря! – JmanxC

Смежные вопросы