«x86» 태그된 질문

x86은 Intel 8086 CPU에서 파생 된 아키텍처입니다. x86 제품군에는 32 비트 IA-32 및 64 비트 x86-64 아키텍처와 레거시 16 비트 아키텍처가 포함됩니다. 후자에 대한 질문에는 [x86-16] 및 / 또는 [emu8086] 태그가 지정되어야합니다. 질문이 64 비트 x86-64와 관련된 경우 [x86-64] 태그를 사용하십시오. x86 FPU의 경우 [x87] 태그를 사용합니다. SSE1 / 2 / 3 / 4 / AVX *의 경우 [sse] 및 해당되는 [avx] / [avx2] / [avx512]도 사용합니다.

2
% 연산자보다 빠른 분할 성 테스트?
컴퓨터에서 궁금한 것을 발견했습니다. * 필기 분할 성 테스트는 %작업자 보다 훨씬 빠릅니다 . 최소한의 예를 고려하십시오. * AMD Ryzen Threadripper 2990WX, GCC 9.2.0 static int divisible_ui_p(unsigned int m, unsigned int a) { if (m <= a) { if (m == a) { return 1; } return 0; } m …

1
왜 GCC가 배열의 초기화를 초기화하여 0이 아닌 요소를 포함하여 모든 것을 먼저 0으로 채우는가?
왜 gcc는 나머지 96 개의 정수 대신에 전체 배열을 0으로 채우는가? 0이 아닌 이니셜 라이저는 모두 배열의 시작 부분에 있습니다. void *sink; void bar() { int a[100]{1,2,3,4}; sink = a; // a escapes the function asm("":::"memory"); // and compiler memory barrier // forces the compiler to materialize a[] in memory …

1
DOS가 .COM 파일을로드 한 후 SP 레지스터를 0xFFFE로 설정하는 이유는 무엇입니까?
.COM 파일 https://en.wikipedia.org/wiki/COM_file 에 대한 Wikpedia 페이지에서 다음을 읽습니다. DOS의 .COM 파일은 모든 x86 세그먼트 레지스터를 동일한 값으로 설정하고 SP (스택 포인터) 레지스터를 0xFFFE로 설정하므로 스택은 메모리 세그먼트의 맨 위에서 시작하여 거기서부터 내려옵니다. 그러나 이것은 실제로 스택을 세그먼트 상단의 한 단어 아래에서 시작하도록 설정합니다. 스택에서 값을 푸시하면 CPU가 SP를 0xFFFC로 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.