인텔 및 AMD 프로세서가 원래 단어 길이 (요즘 주로 64 비트)로 명령어를 가져 오는 것을 알고, 필자는 그것에 대해 제 동생에게 물었고 더 효율적으로 프로세서를 실행하기 위해 일부 조립 프로그래머 패드 nop
의 32 비트 감독의 지시 이상 4 또는 8 바이트의 바이트 길이를 넣어 다음 명령 경우 :패딩 명령어에 실제적인 이점이 있습니까?
xor ax, ax ; 2 bytes
nop ; 1
nop ; 1
그래서이 일을 어떤 혜택이?
386 프로세서에서? 아마도. 오늘? 불안한. – Wug
최근 페치 크기는 16 또는 32 바이트입니다. 어떤 경우에는 패딩에 약간의 이점이 있습니다. 가장 중요한 경우는 Core2에서 16 바이트 블록에 7 개의 명령어가있을 때입니다 (프리 디코더는 다음 사이클을 위해 7 번째 명령어를 남기고 하나의 명령어 만 그 다음 사이클에서 미리 디코딩 됨). 이 경우에는'nop'으로 채우는 것이 도움이되지 않을 것입니다. 접두어로 덧붙여 야합니다. – harold
나는 386에서 한 일을 기억하지 않습니다. 프리 페치 대기열이 얼마나 큰지를 기억할 수는 없지만 패딩이 도움이되는 상황이 있다는 것을 기억할 수는 없습니다. –