Этот код выводит четыре байта 32-битного числа x (0x12345678) по одному, начиная с младшего байта. В памяти x хранится в little-endian порядке, поэтому байты выводятся как 0x78, 0x56, 0x34, 0x12.
- Обратите внимание, что PRINT_HEX с первым параметром 1 выводит только один байт, но вы передаёте полный регистр eax. Убедитесь, что в eax действительно только один значащий байт — movzx обнуляет старшие биты, поэтому всё корректно.
- Если задача была вывести байты в обратном порядке (начиная со старшего), то порядок индексов в [x+...] нужно изменить.