秋2018大学计算机,PA2018秋季指导-南京大学计算机科学与技术系.pdf

PA 2018 秋季 实验指导

本教程是针对 2018 年秋季《计算机系统基础》Programming Assignment (PA)实验的指导。本教程所使

用的框架代码可以通过以下方式获取。

git clone /ics-pa/pa2018_spring.git

拿到框架代码后,请注意以下几点(重要)

1)修改 Makefile.git 中的 STU_ID 填入学号 ;

2)在项目根目录执行 make clean。在提交时,使用 make submit 命令打包项目代码并上传压缩包 (详细内

容请参见 PA 0);

3)根据提示设置 git username 和 email 信息。

 本实验教程是 PA 课堂教学的配套教程,其中理论部分主要依赖《计算机系统基础》理论课的教授。

整个 PA 实验由四个主要部分组成,分别是:

PA 1 - 数据的表示、存取和运算 PA 2 - 程序的执行

PA 3 - 存储管理 PA 4 – 异常、中断与 I/O

这四个阶段大致对应模拟器中对 CPU、MMU 和 Device 的模拟,涵盖计算机系统基础课程中的主要内容,

并尽力做到和理论课程的讲授进度的同步。

 除 PA 0 和可选任务 以外,每一阶段的 PA 在教程中都会 以如下方式展开 :

1. 路线图 :指明当前完成的阶段的进度;

2. 预备知识 :简要讲述和回顾这一阶段实验所对应的理论知识,如不清楚,请结合理论课内容进行复习;

3. 代码导读和实验理解 :详细讲述实验所涉及的代码,并对实验中所需要完成的内容进行讲解和提示 ;

4. 实验过程及要求 :罗列实验步骤和要求,在每一阶段开始做之前,可以先看看这里的要求。

 教程所涉及的主要参考资料

1. 课本

2. i386 手册

 /6.858/2014/readings/i386.pdf

3. Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1: Basic Architecture

 /en-us/articles/intel-sdm

4. x86 Instruction Set Reference (i386 手册上没有的指令来这里找)

 /x86/

1

Don’t

panic :-)

2

目录

PA 2018 秋季 实验指导 1

目录3

PA 0 实验环境配置4

PA 1 数据的表示、存取和运算 8

PA 1-1 数据在计算机内的存储9

PA 1-2 整数的表示、存储和运算 13

PA 1-3 浮点数的表示和运算17

PA 2 程序的执行24

PA 2-1 指令解码与执行 25

PA 2-2 装载程序的 loader 43

PA 2-3 可选任务:完善调试器48

PA 3 存储管理 58

PA 3-1 Cache 的模拟 59

PA 3-2 保护模式 63

PA 3-3 虚拟地址转换71

PA 4 异常、中断与 I/O 76

PA 4-1 异常和中断的响应 77

PA 4-2 外设与 I/O 83

PA 4-3 可选任务:游戏移植89

I386 手册勘误 94

Git 入门教程 98

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值