《软硬件接口》课程大纲

《软硬件接口》课程大纲

Coursera课程 The Hardware/Software Interface是华盛顿大学提供的一门课程,其中汇编语言、进程结构、Java实现等章节内容我认为对于学编程的同学来说非常有用。教学环境是Fedora,顺带介绍了一些常用工具的使用。

课程大纲

  • 这门课程将会让学生知道当软件运行时到底发生了什么,并说明这个问题可以通过硬件架构层、汇编层、C语言层和Java层等数层抽象解答。-
  • 这门课程的核心是关于C、汇编、以及底层数据表示的,但同时与更高层(Java语言实现机理)、更底层(处理器通用架构)、操作系统(无关操作系统的实现)相关。
  • 对于那些想要专注于高层抽象的计算机专业学生来说,这门课可能是他们学习到的关于C语言及以更下层的唯一课程。不过,他们大多能够同时学到一些系统编程、硬件设计与实现、操作系统、编译器等知识。
  • 对于对硬件、嵌入式系统、计算机工程、计算机架构等感兴趣的学生来说,这门课程是一门入门课程,后续课程会在特定领域更加深入,并且会关注更下层的硬件实现、电路设计等。

课程主题

本课程主要有三个主题。

  1. 表示:不同的数据类型,如整数和结构体数组,在内存中如何存在?指令如何编码?如何生成内存地址并用于创建复杂的数据结构?
  2. 翻译:高层的语言,如C和Java如何转换成硬件处理器的基本指令?
  3. 控制流:计算机如何阻止计算的顺序,如何跟踪大型程序当前的运行轨迹,多个进程如何并行执行?

课程目标

课程结束后,学生应该能够

  1. 理解高层次的程序转换成可以被处理器执行的指令流的过程
  2. 知道指针是什么,以及如何使用指针操纵复杂的数据结构
  3. 能够使用X86汇编语言写简短的程序,并理解汇编语言和高层次语言如何映射
  4. 理解分级存储器的基本组织和参数,理解它对于系统性能的重要性
  5. 能够解释清楚操作系统的功能
  6. 知道Java和C的本质区别
  7. 理解并行机制以及它在系统级的重要性
  8. 成为更高效的程序员,更有效的debug,对系统性能更敏感

课程专题

大约每周一个专题,包括

  • 数字的表示
  • 汇编语言
  • C语言基础
  • 内存管理
  • 操作系统的进程模型
  • 高层次机器架构
  • 分级存储器
  • 高层次语言的实现

  
  

转载请注明作者:Focustc,博客地址为 http://blog.csdn.net/caozhk,原文链接为 点我
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值