Write an assembly language function int toKilometers int mil
Write an assembly language function int toKilometers (int miles) that takes distance as miles and returns the distance in kilometers.
Solution
.LC0:
         .string \"Enter miles\"
 .LC1:
         .string \"%d\"
 .LC3:
         .string \"%d miles=%d kilometers\"
 main:
         push    rbp
         mov     rbp, rsp
         sub     rsp, 16
         mov     edi, OFFSET FLAT:.LC0
         mov     eax, 0
         call    printf
         lea     rax, [rbp-8]
         mov     rsi, rax
         mov     edi, OFFSET FLAT:.LC1
         mov     eax, 0
         call    scanf
         mov     eax, DWORD PTR [rbp-8]
         cvtsi2sd        xmm0, eax
         movsd   xmm1, QWORD PTR .LC2[rip]
         mulsd   xmm0, xmm1
         cvttsd2si       eax, xmm0
         mov     DWORD PTR [rbp-4], eax
         mov     eax, DWORD PTR [rbp-8]
         mov     edx, DWORD PTR [rbp-4]
         mov     esi, eax
         mov     edi, OFFSET FLAT:.LC3
         mov     eax, 0
         call    printf
         mov     eax, 0
         leave
         ret
 .LC2:
         .long   3229815407
         .long   1073324490

