1
일부 어셈블리 프로그래밍을 배우려고합니다.이 코드를 발견했습니다. 매크로가 asm 파일에서 사용되었습니다. 그러나이 코드가 실제로 무엇을 의미하는지 이해할 수 없습니까? ..align (5) 및 0x90을 사용하여 .align 지시어를 올바르게 사용합니다.
#define ALIGN(log) .align(log) ,0x90;
0x90은 무엇을 의미합니까? 나는 ALIGN 이유 assembly.and하는 것은 매우 새로운 오전 (5) 대신 일반 ALIGN의 사용 (4) 또는 ALIGN (8)
#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
# define ALIGN_LOG
#endif
#ifdef ALIGN_LOG
# define ALIGN(log) .align (log), 0x90;
#else
# define ALIGN(log) .align 1 << (log), 0x90;
#endif
#define ENTRY(name) \
ALIGN(5); \
.globl name; \
.globl _##name; \
name: ; \
_##name:
~