
link
来源:www.coursera.org
list
8个序列
assignment
等级:入门
label
软件开发
chat_bubble_outline
语言:英语
card_giftcard
640分
评论
关键信息
credit_card
免费进入
verified_user
免费证书
timer
80小时总数
关于内容
Examines key computational abstraction levels below modern high-level languages. From Java/C to assembly programming, to basic processor and system organization.
more_horiz
查看更多
more_horiz
收起
dns
课程大纲
This course should develop students’ sense of “what really happens” when
software runs — and convey that this question can be answered at several
levels of abstraction, including the hardware architecture level, the assembly
level, the C programming level and the Java programming level. The core
around which the course is built is C, assembly, and low-level data representation,
but this is connected to higher levels (roughly how basic Java could be
implemented), lower levels (the general structure of a processor), and
the role of the operating system (but not how the operating system is implemented).
For (computer science) students wanting to specialize at higher levels
of abstraction, this could in the extreme be the only course they take
that considers the “C level” and below. However, most will take a subset
of Systems Programming, Hardware Design and Implementation, Operating Systems,
Compilers, etc. For students interested in hardware, embedded systems,
computer engineering, computer architecture, etc., this course is the introductory
course after which other courses will delve both deeper (into specific
topics) and lower (into hardware implementation, circuit design, etc.).
The course has three principal themes:
- Representation: how different data types (from simple integers to arrays of data structures) are represented in memory, how instructions are encoded, and how memory addresses (pointers) are generated and used to create complex structures.
- Translation: how high-level languages are translated into the basic instructions embodied in process hardware with a particular focus on C and Java.
- Control flow: how computers organize the order of their computations, keep track of where they are in large programs, and provide the illusion of multiple processes executing in parallel.
- understand the multi-step process by which a high-level program becomes a stream of instructions executed by a processor;
- know what a pointer is and how to use it in manipulating complex data structures;
- be facile enough with assembly programming (X86) to write simple pieces of code and understand how it maps to high-level languages (and vice-versa);
- understand the basic organization and parameters of memory hierarchy and its importance for system performance;
- be able to explain the role of an operating system;
- know how Java fundamentally differs from C;
- grasp what parallelism is and why it is important at the system level; and
- be more effective programmers (more efficient at finding bugs, improved intuition about system performance).
- Number representation
- Assembly language
- Basics of C
- Memory management
- Operating-system process model
- High-level machine architecture
- Memory hierarchy
- Implementation of high-level languages
record_voice_over
教师
- Luis Ceze - Computer Science & Engineering
- Gaetano Borriello - Computer Science & Engineering
store
内容设计师

华盛顿大学是位于华盛顿州西雅图市的一所公立研究型大学。华盛顿大学成立于 1861 年 11 月 4 日,原名领土大学,是西海岸历史最悠久的大学之一,在西雅图建市约十年后落户西雅图。
该大学的主校区位于该市的大学区,占地 703 英亩,在塔科马和博特尔也有校区。总的来说,华盛顿大学由 500 多座建筑和 2000 多万平方英尺的总面积组成,其中包括世界上最大的图书馆系统之一,拥有 26 个学术图书馆、艺术中心、博物馆、实验室、演讲厅和体育馆。
华盛顿大学是华盛顿州六所公立大学中的旗舰院校。它以医学、技术和科学研究而闻名。
assistant
平台

Coursera是一家数字公司,提供由位于加利福尼亚州山景城的计算机教师Andrew Ng和达芙妮科勒斯坦福大学创建的大型开放式在线课程。
Coursera与顶尖大学和组织合作,在线提供一些课程,并提供许多科目的课程,包括:物理,工程,人文,医学,生物学,社会科学,数学,商业,计算机科学,数字营销,数据科学 和其他科目。
您是 MOOC 的设计者?
keyboard_arrow_left
grade
keyboard_arrow_right
整合评论系统