#Etiquetas que contienen los mensajes String de los printf
.LC0:
.string "Captura la calificacion de medio curso-> "
.LC1:
.string "%d"
.align 8
.LC2:
.string "Captura la calificacion de curso ordinario-> "
.align 8
.LC3:
.string "Capture el total de puntos obtenidos del portafolio (20 max)-> "
.align 8
.LC6:
.string "Felicidades, usted ha aprobado el curso con un %.0f"
.align 8
.LC7:
.string "Cuanto lo siento pero ha reprobado el curso con un %.0f y tendra que volver a llevarlo\\n"
.text
.globl main
#Dentro de la funcion main se realizan operaciones de reserva y movimiento en espacios de memoria para las variables ademas de almacenamiento de valores (scanf)
main:
.LFB0:
.cfi_startproc
pushq %rbp
movq %rsp, %rbp
subq $32, %rsp
movl $.LC0, %eax
movq %rax, %rdi
movl $0, %eax
call printf
movl $.LC1, %eax
leaq -24(%rbp), %rdx
movq %rdx, %rsi
movq %rax, %rdi
movl $0, %eax
call __isoc99_scanf
movl $.LC2, %eax
movq %rax, %rdi
movl $0, %eax
call printf
movl $.LC1, %eax
leaq -20(%rbp), %rdx
movq %rdx, %rsi
movq %rax, %rdi
movl $0, %eax
call __isoc99_scanf
movl $.LC3, %eax
movq %rax, %rdi
movl $0, %eax
call printf
movl $.LC1, %eax
leaq -16(%rbp), %rdx
movq %rdx, %rsi
movq %rax, %rdi
movl $0, %eax
call __isoc99_scanf
movl -24(%rbp), %eax
cvtsi2sd %eax, %xmm0
movsd .LC4(%rip), %xmm1
mulsd %xmm1, %xmm0
unpcklpd %xmm0, %xmm0
cvtpd2ps %xmm0, %xmm0
movss %xmm0, -12(%rbp)
movl -20(%rbp), %eax
cvtsi2sd %eax, %xmm0
movsd .LC4(%rip), %xmm1
mulsd %xmm1, %xmm0
unpcklpd %xmm0, %xmm0
cvtpd2ps %xmm0, %xmm0
movss %xmm0, -8(%rbp)
movss -12(%rbp), %xmm0
movaps %xmm0, %xmm1
addss -8(%rbp), %xmm1
movl -16(%rbp), %eax
cvtsi2ss %eax, %xmm0
addss %xmm1, %xmm0
movss %xmm0, -4(%rbp)
movss -4(%rbp), %xmm0
ucomiss .LC5(%rip), %xmm0
setae %al
testb %al, %al
je .L2
movss -4(%rbp), %xmm0
cvtps2pd %xmm0, %xmm0
movl $.LC6, %eax
movq %rax, %rdi
movl $1, %eax
call printf
jmp .L3
.L2: #llamada a los resultados finales e impresion de resultados
movss -4(%rbp), %xmm0
cvtps2pd %xmm0, %xmm0
movl $.LC7, %eax
movq %rax, %rdi
movl $1, %eax
call printf
.L3: #terminacion de los procesos del programa
movl $0, %eax
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LC4: #imprime el float del promedio final
.long 2576980378
.long 1071225241
.align 4
.LC5: