📄 mips lab environment reference.mht
字号:
<TD><FONT size=3D-1>- address to integer </FONT></TD></TR>
<TR>
<TD><FONT size=3D-1>a2 </FONT></TD>
<TD><FONT size=3D-1>- radix 8, 10 or 16 </FONT></TD></TR>
<TR>
<TD><FONT size=3D-1>a3 </FONT></TD>
<TD><FONT size=3D-1>- segment 0x0, 0x80000000, 0xA0000000 or=20
0xC0000000 </FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>v0 </FONT></TD>
<TD><FONT size=3D-1>- address to string where conversion =
stopped=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>string1:
.asciiz "12345"
.align 4
integer1:
.word
...
la a0, string1
la a1, integer1
li a2, 10
li a3, 0
jal promatob
</PRE>The word at <CODE>integer1</CODE> will have the value 12345.=20
</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE>prom<B>strcmp</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Compare two=20
null-terminated strings.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- address to string 1 (s) =
</FONT></TD></TR>
<TR>
<TD><FONT size=3D-1>a1 </FONT></TD>
<TD><FONT size=3D-1>- address to string 2 (t)=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>v0 </FONT></TD>
<TD><FONT size=3D-1>- result =A8C<0 if s<t, >0 if =
s>t, 0 if=20
s=3Dt </FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>string1:
.asciiz "I'm bigger than you are"
string2:
.asciiz "No, you aren't!"
...
la a0, string1
la a1, string2
jal promstrcmp
</PRE>Register v0 will have a value less than zero.=20
</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE>prom<B>strlen</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Determine the=20
number of characters in a null-terminated string.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- address to string=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>v0 </FONT></TD>
<TD><FONT size=3D-1>- length of the string=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>string1:
.asciiz "How long am I?"
...
la a0, string1
jal promstrlen
</PRE>Register v0 will be 14. </FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE>prom<B>strcpy</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Copy one=20
null-terminated string to another.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- address to destination string =
</FONT></TD></TR>
<TR>
<TD><FONT size=3D-1>a1 </FONT></TD>
<TD><FONT size=3D-1>- address to source string=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>v0 </FONT></TD>
<TD><FONT size=3D-1>- address to destination string=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>src_string:
.asciiz "Copy me please!"
dst_string:
.space 32
...
la a0, dst_string
la a1, src_string
jal promstrcpy
</PRE>The memory at <CODE>dst_string</CODE> will contain the=20
null-terminated string "Copy me please!".=20
</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE>prom<B>strcat</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Concatenate two=20
null-terminated strings.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- address to destination string (s) =
</FONT></TD></TR>
<TR>
<TD><FONT size=3D-1>a1 </FONT></TD>
<TD><FONT size=3D-1>- address to source string (t)=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>v0 </FONT></TD>
<TD><FONT size=3D-1>- address to destination string (s =3D s + =
t)=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>dst_string:
.asciiz "hello"
.space 32
src_string:
.asciiz " world"
...
la a0, dst_string
la a1, src_string
jal promstrcat
</PRE>The memory at <CODE>dst_string</CODE> will contain the=20
null-terminated string "hello world". =
</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE><B>install_normal_int</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Install=20
user exception/interrupt handler. The interrupt handler should return =
non-zero=20
if it processed the interrupt, otherwise it should return zero. The =
return value=20
is set in register v0.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- address to interrupt handler=20
</FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR><BR></TR>
<TR>
<TD noWrap><FONT face=3DArial size=3D-1><I>Return =
value:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><I>none</I></FONT> </TD></TR>
<TR><BR></TR>
<TR>
<TD><FONT face=3DArial size=3D-1><I>Example:</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD><FONT size=3D-1><PRE>my_handler:
# check if interrupt is NOT for me, if so return 0
li v0, 0
j ra
# otherwise do something useful and return non-zero
...
li v0, 1
j ra
...
la a0, my_handler
jal install_normal_int
</PRE></FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellPadding=3D0 width=3D"100%" bgColor=3D#e0e0e0 border=3D0>
<TBODY>
<TR>
<TD><CODE><B>fptodp</B></CODE> =
</TD></TR></TBODY></TABLE><BR>Converts arguments=20
from single precision floating-point to double precision. Needs to be =
called=20
before passing a floating-point argument to printf.=20
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD noWrap><FONT face=3DArial =
size=3D-1><I>Argument(s):</I></FONT></TD>
<TD></TD></TR>
<TR>
<TD></TD>
<TD>
<TABLE cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD><FONT size=3D-1>a0 </FONT></TD>
<TD><FONT size=3D-1>- floating-point argument=20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -