Как длина слова ISA реализована в аппаратном и программном обеспечении?

Я узнал, что длина слова — это функция ISA, которая должна быть реализована как аппаратно, так и программно. Я имею смутное представление только об ответе. Мне нужна коррекция или подтверждение. Становится ли длина слова размером регистра общего назначения в ЦП? Становится ли длина слова размером «int» (просто int, а не длинный или короткий) для компилятора?


person KawaiKx    schedule 27.02.2011    source источник


Ответы (3)


Длина слова — это количество битов, изначально обрабатываемых системой. В настоящее время распространенными версиями являются 32-битные слова и 64-битные слова.

Например, байт может содержать число от 0 до 255. Однако 32-битное целое число находится в диапазоне от 0 до 4 294 967 295. Целое число - это собственный «размер слова» системы, поэтому в 32-битных системах оно имеет ширину 4 байта и, следовательно, значительно больше, чем 0-255.

Фактически, во многих системах/компиляторах/и т.д. типы, которые меньше собственного размера слова системы, преобразуются в этот размер слова просто потому, что это более эффективно, чем попытка поместить несколько значений в одно слово. Например, логическое значение может быть представлено одним битом. Однако если вы напишете программу, использующую 32 логических значения, она не сможет втиснуть их все в одно слово. Каждому будет присвоено свое слово, когда оно будет работать на металле.

person David    schedule 27.02.2011
comment
@Neera Я пересмотрел вопрос, чтобы лучше понять, какую информацию я ищу. Пожалуйста, найдите время, чтобы прочитать его снова и ответить. - person KawaiKx; 28.02.2011

Я беру на себя смелость и интерпретирую этот вопрос как размер целого числа на компьютере в C или C++. В этом случае эта ссылка поможет - Зависит ли размер int от компилятора и/или процессора?. Однако если читать буквально, то размер слова ЦП должен быть размером его регистра.

person Neera    schedule 27.02.2011

Аппаратная реализация. Длина слова — это количество байтов, извлекаемых ЦП за раз, и его также можно назвать естественным размером машины. хотя в компьютерах нет ничего естественного. он также становится размером регистра ЦП в реализации, поскольку ему нужны регистры для хранения того, что он извлекает. Сказав это, можно использовать регистр большего размера для целей хранения. Программное обеспечение IA-32 (с длиной слова 32 бита) может работать на x86-64 (с длиной слова 64 бита). Программная реализация: длина слова становится размером 'int' (просто int, а не long, short)

person KawaiKx    schedule 01.03.2011