вывести int as asii в 64-битной сборке при ошибке & float number

Я написал сольную программу, чтобы выяснить, как это сделать, раньше я добавил 48 к числу для печати, но теперь, когда я получаю числа больше 9, этого уже не достаточно.

Таким образом, следующая программа должна поместить 23 в my temp, сравнить 23 с 10, если она меньше 10, я могу напечатать, иначе убрать temp в rax, положить 10 в r11 и разделить 23 на 10. Положим результат rax в temp и Проверьте еще раз. Мне все еще нужно добавить способ получения более ранних чисел, но обо всем по порядку. Я неправильно понял, что происходит, в результате я получаю ошибку с плавающей точкой

#include <stdio.h>          #Inkludera standard I/O

.data                   #Specifiera data
temp:           .quad   0
temp2:          .quad   0

.text   

  .global main
main:
movq    $23, temp
jmp check

check:
cmpq    $10, $temp
jl  under10
movq    $temp, %rax
movq    $10, %r11
divq    %r11
movq    %rax,temp
jmp check

under10:
addq    $48, temp
movq    $temp,%rdi
call    puts

Ответы на вопрос(1)

Ваш ответ на вопрос