美文网首页
MIPS汇编——指令学习笔记

MIPS汇编——指令学习笔记

作者: csRyan | 来源:发表于2017-03-29 00:12 被阅读1509次

数量单位:


MIPS架构标准的寄存器:

  • 32个32bit的通用寄存器(R0~R31):


    通用寄存器
  • program counter (PC) 无法直接修改,通过跳转指令可以改动
  • HI 和 LO :这两个寄存器特别用来保存乘法、除法、乘法累加的结果。

内存:

除了寄存器以外,内存地址也可能作为MIPS指令的操作数,内存中每个字节有一个编号,因此连续的两个word的地址编号相差4。MIPS架构中的地址为32位,也就是说地址编号从0 到 4,294,967,295,每个数字代表内存中的一个byte。

汇编语言与机器码:

汇编语言执行之前要通过assembler翻译成机器码。

整数:

32bits表示整数范围:0 到 +4,294,967,295(无符号数),或–2,147,483,648 到 +2,147,483,647(有符号数)。

位扩展:

两种可能造成位扩展的指令

  • addi: extend immediate value
  • lb, lh: extend loaded byte/halfword

对于无符号数直接高位补0,对于有符号数高位补符号位。

指令结构:

指令长度都是32bit。

R型结构

R型结构

I型结构

I型结构

移位指令

Shift left logical(sll)
Shift left and fill with 0
sll by i bits multiplies by 2i
Shift right logical(srl)
Shift right and fill with 0
srl by i bits divides by 2i (unsigned only)

位移指令可以用来快速做整数乘除2^n的计算

AND和OR

前面我们说过,使用addi操作16bit的数据会造成位扩展,也就是有时高位补1有时补0。用AND或OR来操作16bit数就不同,只会对高位补0

跳转指令

使用label来指定跳转位置:


比较相等型if
比较大小型if
while结构

尽量只使用简单的beq和bne,它们只需要更短的时钟周期,能避免拖慢始终的速度。

针对unsigned的指令与针对signed的指令的不同

指令名中的u表示该指令将寄存器中的数字当作无符号数处理:

sltui: Set on Less Than Unsigned Immediate

相关文章

  • MIPS汇编——指令学习笔记

    数量单位: MIPS架构标准的寄存器: 32个32bit的通用寄存器(R0~R31):通用寄存器 program ...

  • 计算机组成与设计

    第二章 计算机指令 MIPS汇编语言 在书写指令时,尽管可以使用序号0到31标示相应的寄存器,但MIPS仍然约定:...

  • 指令系统

    指令:计算机的语言 计算机语言中的基本单词称为指令,一台计算机的全部指令称为计算机的指令集。 MIPS汇编语言:a...

  • MIPS | 轻量级mips汇编指令转机器指令(Python实现

    当前版本仅支持常用mips汇编指令(在变量r_dict,i_dict和j_dict中列出),不支持立即数的非十进制...

  • [FPGA]MIPS CPU及ISA设计

    CPU CPU功能简介 该CPU支持32条基础MIPS汇编指令(包含mfc0, mtc0, syscall三条中断...

  • 汇编语言 学习笔记 (二)

    汇编语言学习笔记 三、8086基本指令 数据传送指令 通用数据传送指令 1. MOV传送指令 a. 对标志位无影响...

  • Linux环境下mips-gcc编译

    背景 在之后的学习中,需要在自己的mips架构cpu上编写一系列工具。不想使用mips汇编代码编写这些工具,希望使...

  • 8086 指令系统寻址方式

    整理汇编语言学习笔记,回顾一下8086 指令系统的寻址方式。 寻址与指令 寻址方式(Addressing Mode...

  • MARS(MIPS汇编程序和运行时模拟器)

    MARS(MIPS汇编程序和运行时模拟器)An IDE for MIPS Assembly Language Pr...

  • 关于本文集的说明

    汇编语言根据CPU的架构可以分为不同的指令集,例如MIPS和MASM。本文集目前所有的内容都是关于MASM(Mic...

网友评论

      本文标题:MIPS汇编——指令学习笔记

      本文链接:https://www.haomeiwen.com/subject/scvsottx.html