Нулевой регистр
Нулевой регистр — это регистр процессора , который всегда возвращает нулевое значение и не оказывает никакого влияния при записи. Он встречается в архитектурах набора команд, включая CDC 6600 , System/360 и ARM64 , среди других.
Ноль появляется как константа во многих инструкциях, особенно «перейти, если ноль», и оптимизация этих инструкций может положительно повлиять на производительность. В некоторых архитектурах это достигается с помощью специальных кодов операций — специализированных вариантов базовых инструкций. Для их реализации требуется дополнительная логика в декодере инструкций . Нулевой регистр может обеспечить тот же эффект, не требуя новых кодов операций, хотя и за счет выделения регистра для этой функции, что может иметь негативное влияние на архитектуры с ограниченным количеством регистров.
В архитектуре x86 нет нулевого регистра, ARM добавила нулевой регистр для ARM64. Архитектура RISC-V включает регистр с именем «x0» и именем ABI «ноль»; причина этого включения заявлена как «Выделение регистра нулевым значением на удивление является важным фактором в упрощении RISC-V ISA». [1]
Ссылки
[ редактировать ]- ^ Паттерсон, Дэвид. Читатель RISC-V: Атлас открытой архитектуры (бета-версия, ред. 0.0.1). п. 18.
- Маши, Джон (8 августа 1998 г.). «10 главных ошибок в компьютерной архитектуре» .
- «Спецификация RISC-V» (PDF) .