PA1: 监视器

请阅读实验须知/提交方法实验指南

Deadline:

  • PA 1.1: 2023.9.30 (此为建议的不计分 deadline)
  • PA 1.2: 2023.10.5 (此为建议的不计分 deadline)
  • PA 1.3: 2023.10.15 23:59:59 (以此 deadline 计按时提交奖励分)

你们可能用到的 NES Roms。请仅用于测试。

Online Judge 评测说明

除了解压缩、执行一些基础的检查外,我们会:

  • 将你项目的 srcinclude 复制到工作目录中;
  • 注意本学期要求选择riscv32指令集;
  • 使用我们的 Makefile 编译项目,得到二进制文件:
    • Makefile 行为/编译选项与框架代码一致;
  • 执行测试用例,并判定正确性。

常见问题

  1. Runtime Error: 我们会检查 NEMU 可执行文件的返回值。遵守 UNIX 世界的规定,如果返回值非 0 则表示命令执行出现错误。因此在命令正常退出 (如收到 q 命令后) 应当返回 0。一个不合适的方法是直接 exit 退出。合适的方式是正确地设置 nemu_state——直接退出可能导致部分逻辑未被执行。
  2. 我们的表达式可能比较长,超过 32 个 tokens,但你可以假设还是人类可以写出的表达式。
  3. 你可以将负数当做无符号整数处理,不会影响结果。我们没有 -2 / 2 这样的测试用例。
  4. 如果遇到 Wrong Answer,请你尝试更复杂的、混合各种类型特性的表达式。