これはばかげている、または怠惰に聞こえるかもしれません。ax レジスターは 16 ビットで double は 64 ビットであることはわかっています。__asm を使用して double を ax に転送するにはどうすればよいですか? 問題は、どうすればそれらを 4 (16 ビット) に分割するか、または 3 (16 ビット) にアクセスして、asm を使用して double の ax に入るのですか?
Part2 16 ビット (ビット単位) を i に戻すにはどうすればよいですか?
int main(void)
{
double i= 0;
__asm
{
MOV ax, i;
//Some calucation
MOV i, ax;
}
std::cout << i << std::endl;
return 0;
}
最後にMOVSX、MOVSZとは