You are not using the read string
system call correctly. I suspect you haven’t actually looked at the documentation on how to use it. You have to pass two arguments:
$a0 = address of input buffer $a1 = maximum number of characters to read
So you should do something like:
la $a0, name li $a1, 20
Nevertheless, this shouldn’t cause a crash since $a0
should still hold the address of firstPromptString
that you set up for the printing, earlier, and that is valid writable memory.
Related Posts:
- Why shift a bit using sll and such in MIPs Assembly?
- Understanding how `lw` and `sw` actually work in a MIPS program
- MIPS: lw (load word) instruction
- MIPS assembly for a simple for loop
- mips .word function and differences between 2 codes
- Why doesn’t there exists a subi opcode for MIPS?
- What exactly does the lb instruction do?
- What is the difference between la and li in opcodes in MIPS?
- what is the use of ori in this part of MIPS code?
- Integer absolute value in MIPS?
- MIPS Assembly – lui $t0, 4097?
- Greater than, less than equal, greater than equal in MIPS
- MIPS program jr $ra instructions and stack handling
- Subtract two input numbers
- Assembly language (MIPS) difference betweent addi and add
- MIPS Address out of range (MARS)
- Difference between “addi” and “add” for pseudoinstruction “move” in MIPS?
- sorting array in mips (assembly)
- Multiplication by a power of 2 using Logical shifts in MIPS assembly
- MIPS instruction and machine code
- Convert from Java to MIPS
- Understanding Assembly MIPS .ALIGN and Memory Addressing
- What’s the purpose of the LEA instruction?
- Understanding cmp instruction
- assembly “mov” instruction
- Assembly code vs Machine code vs Object code?
- What does the MOVZBL instruction do in IA-32 AT&T syntax?
- What’s the purpose of the LEA instruction?
- How to move ST(0) to EAX?
- The point of test %eax %eax
- Assembly: How does fld st(0) duplicates the top stack value in the following code?
- What does the MOVZBL instruction do in IA-32 AT&T syntax?
- What’s the purpose of the LEA instruction?
- The difference between cmpl and cmp
- x86 cmpl and jne
- What is the meaning of XOR in x86 assembly?
- What is the function of the push / pop instructions used on registers in x86 assembly?
- What is callq instruction?
- What does the BEQ instruction do exactly?
- What’s the size of a QWORD on a 64-bit machine?
- what does .space do in mips?
- Purpose of ESI & EDI registers?
- What are the ESP and the EBP registers?
- IDIV operation in assembly (understanding)
- Convert C program into assembly code
- LC3 LEA instruction and the value stored
- lc3 LDR instruction and the value stored
- What does movslq do?
- Assembly language je jump function
- Bubble sort algorithm in MIPS
- What are .S files?
- How do I correctly use the mod operator in MIPS?
- explanation about push ebp and pop ebp instruction in assembly
- Why are rbp and rsp called general purpose registers?
- x86 assembly: How does the ‘subl’ command work in AT&T syntax
- what does the cmpq instruction do?
- Purpose of ESI & EDI registers?
- Difference between “move” and “li” in MIPS assembly language
- Bubble sort on array on Assembly Language
- Nasm Error: invalid combination of opcode and operands
- When and why do we sign extend and use cdq with mul/div?
- Assembly addq clarification
- How do AX, AH, AL map onto EAX?
- writing functions in assembler
- pop or add esp, 4 ? What is the difference?
- What is the difference between MOV and LEA?
- `testl` eax against eax?
- Difference between JE/JNE and JZ/JNZ
- what is a file handle and where it is useful for a programmer?
- Printing out a number in assembly language?
- How does `Skipcond` work in the MARIE assembly language?
- What are callee and caller saved registers?
- What does `dword ptr` mean?
- Difference between JA and JG in assembly
- what does the the dword operand do in assembly
- What’s the difference between a word and byte?
- MIPS to C Translation
- Difference between movq and movabsq in x86-64
- What is the jmpq command doing in this example
- What does the LEAL assembly instruction do?
- Assembly – JZ instruction after CMP
- [Binary Bomb – Phase 4
- What does bx lr do in ARM assembly language?
- Difference between masm32 and masm?
- need help understanding the movzbl call in this function
- MIPS fetch address not aligned on word boundary, used .align 4, still no go
- While, Do While, For loops in Assembly Language (emu8086)
- Mips how to store user input string
- x86 Assembly pointers
- xorl %eax – Instruction set architecture in IA-32
- Reading and printing an integer in mips
- Which variable size to use (db, dw, dd) with x86 assembly?
- Assembly x86 – “leave” Instruction
- Arithmetic Overflow in mips
- JNZ & CMP Assembly Instructions
- Printing newline in MIPS
- What is the use of a $zero register in MIPS?
- Assembly Language – How to do Modulo?
- GDB no such file or directory
- `js` and `jb` instructions in assembly