0

您好我想创建一个包含从 0 到 255 的整数的数组,使用循环将这些整数存储到 MIPS 程序集中的数组中。我是组装新手 谢谢

4

1 回答 1

0

好吧,这对于新用户来说有点难以弄清楚,然后写出来。我将解释如何实现这一目标,以便您知道要研究什么才能完成这一目标。就计算机体系结构而言,装配功能在如此低的操作水平上。汇编直接转换成 cpu 可以处理的命令。这就是为什么每个命令都在一行上的原因。一行转换为 cpu 知道如何执行的一项操作。

cpu 可以做诸如加减或比较两个数字之类的事情,但它只适用于数字值。在一个操作中,cpu 可以执行类似 add 的操作,然后将数据保存在某个地方。这是我假设您熟悉的部分。此保存的数据必须存储在某个地方。该数据非常直接地转换为二进制 1 和 0。在这个级别的操作中,我们不会将数据存储在通常的 RAM 内存中。我们目前正在 CPU 上执行命令,因此我们正在使用它的板载内存。该内存称为堆栈。它具有超快的访问速度,但甚至没有足够的空间来存储您的阵列。要存储您的数组,您需要通过以增量顺序显式填充内存中的空间来创建它。您可以使用它Store byte来执行此操作,并在循环中按顺序存储所有值。Store byte允许您将数据保存到 RAM 空间中的文字地址,以便您以后可以访问它。但是,您将需要存储一个包含此内存地址的变量作为数组的开头,否则您将无法知道数组的位置。访问您的数组将需要一些开销,因为您实际上只有一个指向其开头的指针。每当您想从其中返回一些数据时,您都必须横向访问您的地址以访问您要查找的内容。

这是一个链接,它解释了您将用来执行此操作的其他命令中的存储字节: http ://www.mrc.uidaho.edu/mrc/people/jff/digital/MIPSir.html

于 2013-05-17T01:07:47.903 回答