안녕 내 xmm 레지스터에 내 모든 값을 인쇄하는 데 문제가 있습니다. XMM 레지스터의 값을 인쇄하십시오.
vmovupd ymm14, [rsp]
는 이제 ymm14 4 수있다 : 나는 그래서 사용자 입력 4 개 숫자와 내가 사용 YMM14 레지스터로 이동 나는
조립
에 여전히 매우 새로운 오전 나는 SSE와 AVX를 사용하고 생각합니다. 다음으로 xmm0 및 xmm1로 이동하려고 시도합니다.vextractf128 xmm1, ymm14, 1
vextractf128 xmm0, ymm14, 0
이제는 각각 두 개의 숫자가 저장됩니다. 내가
mov rdi, devicePower
mov qword rax, 4
call printf
를 사용하여 인쇄하려고 지금 때 BTW이 만 낮은 값을 인쇄 얻을 devicePower
devicePower db "Power (watts): %.18lf %.18lf %.18lf %.18lf", 10, 0
입니다. 그래서 입력하면 1 2 3 4 4. 2와 4 만 인쇄됩니다. 내가 디버그 및 1 & 2를 사용하는 동일한 레지스터에 있고 3 & 4 함께 올바른 레지스터 또한, 만 2 & 4 내가 1 & 3을 얻을 수 없기 때문에 내가 뭔가를 놓치고 있습니까
을 인쇄되는 인쇄. 어떤 도움을 주시면 감사하겠습니다.
호출 규칙이 다양하기 때문에 Windows 또는 Linux를 사용하는지 여부를 언급해야합니다. –
메신저 우분투를 사용하여 – rr321