NOP
- это псевдоинструкция , которая расширяется до ADDI x0, x0, 0
.x0
(или zero
) - это регистр только для чтения , предназначенный для нулевого значения, т. Е. Он привязан к нулю для каждого отдельного бита.Все, что записывается в этот регистр, просто отбрасывается, поскольку его значение нельзя изменить.
С Руководство по набору инструкций RISC-V, том I: Непривилегированный ISA :
Инструкция NOP
не изменяет никакого архитектурно видимого состояния, за исключением повышения pc
и увеличения любых применимых счетчиков производительности.NOP
кодируется как ADDI x0, x0, 0
.
Помня о том, что в RISC-V нет арифметических флагов (т. Е. Переносов, переполнения, нуля, флагов знаков), любой арифметической операции, у которой регистр назначения is x0
будет выполнять команду без операции независимо от исходных регистров, так как общий результат будет состоять из перехода счетчика программы к следующей инструкции без изменениялюбое другое соответствующее состояние процессора.