input.asm

URL: http://147.64.242.52/~bennett/class/cmsc3100/spring2026/notes/begin/code/input.asm
 

%include "CONSTANTS.h"

section .data
    inputNumber: dq 0;
    inputFormat: db `%d`,0;

    outputFormat: db `The number is %d\n`,0
    stringOutputFormat: db `the string is '%s'\n`,0


section .bss
    BUFFER_SIZE equ 100
    inputBuffer: resb BUFFER_SIZE

section .text

global main
main:
    ;mov rdi, format1
    ;mov rsi, -1
    ;call CallPrintf 
  
    mov rdi, inputFormat
    mov rsi, inputNumber
    call CallScanf

    mov rdi, outputFormat
    mov rsi, [inputNumber]
    call CallPrintf


    mov rax, SYS_READ
    mov rdi, STDIN
    mov rsi, inputBuffer
    mov rdx, BUFFER_SIZE
    syscall

    mov byte [inputBuffer + rax - 1], 0

    mov rdi, stringOutputFormat
    mov rsi, inputBuffer
    call CallPrintf

    jmp Exit