Un muy buen libro para aprender x86 Assembly es Pentium Processor Optimization Tools . Si bien el enfoque principal del libro es la optimización del código de ensamblaje, enseña el ensamblaje Pentium en el camino, y también es un buen libro de referencia.
Está agotado desde hace mucho tiempo, pero no es difícil de encontrar usado.
Viene con un disquete que contiene un "optimizador de código de ensamblaje". En realidad, no optimiza su código, sino que produce una lista comentada que señala dónde se encuentran las ineficiencias, como las paradas de canalización.
La herramienta que viene con un libro es una versión limitada de un producto más funcional que la compañía del autor solía vender, pero por razones que no conozco, hace mucho que no están en el negocio. No sé por qué, creo que tal herramienta se vendería como hotcakes.
x86 en general es un tema muy complejo ya que hay muchas variantes que son compatibles con diferentes modelos de microprocesadores. Una vez que conozca los conceptos básicos, querrá consultar los libros de datos de Intel o AMD para conocer el chip preciso al que se dirige. Lamentablemente, el código que se ejecuta rápidamente en un modelo de CPU puede no ser tan rápido en un chip diferente.