mars.mips.instructions.syscalls
Class SyscallRead

java.lang.Object
  extended by mars.mips.instructions.syscalls.AbstractSyscall
      extended by mars.mips.instructions.syscalls.SyscallRead
All Implemented Interfaces:
Syscall

public class SyscallRead
extends AbstractSyscall

Service to read from file descriptor given in $a0. $a1 specifies buffer and $a2 specifies length. Number of characters read is returned in $v0. (this was changed from $a0 in MARS 3.7 for SPIM compatibility. The table in COD erroneously shows $a0). *


Constructor Summary
SyscallRead()
          Build an instance of the Read file syscall.
 
Method Summary
 void simulate(ProgramStatement statement)
          Performs syscall function to read from file descriptor given in $a0.
 
Methods inherited from class mars.mips.instructions.syscalls.AbstractSyscall
getName, getNumber, setNumber
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SyscallRead

public SyscallRead()
Build an instance of the Read file syscall. Default service number is 14 and name is "Read".

Method Detail

simulate

public void simulate(ProgramStatement statement)
              throws ProcessingException
Performs syscall function to read from file descriptor given in $a0. $a1 specifies buffer and $a2 specifies length. Number of characters read is returned in $v0 (starting MARS 3.7).

Specified by:
simulate in interface Syscall
Specified by:
simulate in class AbstractSyscall
Parameters:
statement - ProgramStatement object for this syscall instruction.
Throws:
ProcessingException