首页 文章
  • 0 votes
     answers
     views

    MIPS - 如何将一组整数转换为单精度浮点数

    我真的很难搞清楚如何解决这个问题 . 我得到了我想要取整数和分数的二进制表示,将它们组合成尾数,并将符号位分配给开头,但我不知道如何在MIPS中实际实现它 . 任何人都可以帮助我至少开始吗? 假设您的MIPS硬件没有浮点寄存器和浮点ALU . 如果要执行浮点加法,则必须使用使用整数寄存器($ 0 - $ 31)和整数ALU的MIPS整数指令来完成工作 . 在这个赋值问题中,您将编写MIPS代...
  • 0 votes
     answers
     views

    Arraylists的动态内存分配?

    在使用MARS仿真器上的MIPS ISA读取midi文件后,我试图将解码事件存储在数组列表中,该列表将在每个事件的回放时读取 . 由于包含数据结构是一个数组列表,因此它必须能够动态缩小和增长 . 在我的方案中,每个事件将作为两个单词存储在一个数组中 . 这意味着每次向数组列表添加元素时,列表都必须增加8个字节 . 我的问题是如何为一个我不知道分配期间大小的数组动态分配足够的内存?那么我如何通过这个...
  • 2 votes
     answers
     views

    MARS,MIPS汇编程序,将两个文件链接在一起?

    我有一个快速的问题 . 我正在使用MARS汇编程序(在MIPS指令集中编程),我有两个MIPS文件 . 一个文件包含我要运行的主要方法,它在另一个文件中调用一个函数 . 我的函数之前有 .globl 指令,但每次我尝试编译我的程序时都会说 符号表中未找到符号“print_hex” . 以下是更多背景的屏幕截图: 标签print_hex位于名为print_hex.s的文件中 . 如何将这两个文...
  • 2 votes
     answers
     views

    是火星MIPS模拟器Big或Little Endian

    我必须确定火星模拟器是作为家庭作业的大或小端,这看起来非常简单,但我有一些问题 . 首先我尝试在内存中存储4个字节,内存为0,0,0,1,在内存中显示为0x01000000,因此,按相反的顺序,这似乎表示模拟器是小端,但是,当我加载4时字节作为寄存器的整数,寄存器中出现的内容再次为0x01000000,据我所知,如果它是小端,将加载的是0x00000001 . 此外,当使用.word 1存储4个字...
  • 1 votes
     answers
     views

    MIPS组装中的空心方块

    我在使用以下MIPS汇编代码时遇到问题,我想要做的是采用以下C代码并在MIPS汇编(MARS 4.5)中进行此操作 . /* Input number of rows from user */ printf("Enter number of rows: "); scanf("%d", &N); /* Iterate over...

热门问题