- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7
• Microarchitecture
Descriptions of Each Level (cont.)
– detailed organization of a processor implementation
– different implementations of a single ISA
• Program
– express the algorithm using a computer language – high-level language, low-level language
• Instruction Set Architecture (ISA)
– specifies the set of instructions the computer can
Software Design: choose algorithms and data structures Algorithm Programming: use language to express design
Program
Instr Set Architecture
Compiling/Interpreting: convert language to machine instructions
Introduction of computer system From Theory to Practice
• In practice, solving problems involves computing under constraints.
– time
• weather forecast, next frame of animation, ...
进位
1111 0000 1111
无进位,CF=0
有进位,CF=1
28
2 )两个无符号数相减----被减数大于或等于减数,无借 位,结果为正;被减数小于减数,有借位,结果为负。
如: 192-10=C0H-0AH
=B6H =182
1100 - 0000 1011 0000 1010 0110
10-192=0AH-C0H =-B6H=-182
11
二、特点
• 技术性,实践性较强实验课单独设课:计 划学时32 • 计算机硬件系列课程:微机原理,微机原理 实验,硬件课程设计,单片机(任选),嵌 入式系统。
三、教材及参考书
• 微机原理、汇编与接口技术(教材)(清华 大学出版社第二版)朱定华 • 微机原理与接口技术(高等教育出版社第二 版)谢瑞和等编著(国家“十一五”规划级 教材) • 微机原理学习指导 (与教材配套)朱定华
0000 - 1100
1010 0000
10100 1010 借位 有借位,CF=1
无借位,CF=0
结论:对无符号数进行减法运算,其结果的符号用进位来
判别:CF=0(无借位)结果为正;CF=1(有借位)结果为负
29
(2)符号数的运算
两数进行运算,结果超出表示范围会产生溢出;用OF表示
如:105+50 = 155 >127,超出范围,产生溢出
• I/O, Traps, and Interrupts
– How does processor communicate with outside world?
10
前言 一、目的
• 学习微型计算机的基本组成原理、结 构、特点、接口、指令、汇编语言程序 设计软件硬件结合,以达到把手伸到 计算机内部的目的。 • 本课程以Intel 80X86微机,即PC系列微 机为硬件范例,来讨论微机的构成原理 ,以及存储器、输入输出接口芯片与CPU 的接口方法。
0110 + 0011 1001 1001 0010 1011 =155 →视为无符号数,结果正确 =-65H→结果为负,错误,溢出,0F=1
又如:-105-50 = -155 <-128 ,超出范围,产生溢出 1001 0111 + 1100 1110 =65H→结果为正,错误,溢出,0F=1 10110 0101 =-155 →将进位视为符号,结果正确 进位
• Logic Circuits
– combine basic operations to realize microarchitecture – many different ways to implement a single function (e.g., addition)
• Devices
• 典型的微处理器结构
– 8086、8088(16位处理器) – 存储器结构 – 80x86微处理器
14
第1章 微型计算机基础
1.1
1.2 1.3 1.4 1.5
计算机的数和编码
微型计算机的结构和工作原理 80x86微处理器
80x86的寄存器 80x86的工作方式与存储器物理地址的生成
15
1.1.1 计算机中的数制
微机原理、汇编与接口技术
2007. 6. 13
(56学时) 主讲教师: 左冬红 Email: sixizuo@hust.edu.cn
1
• In theory, computer can compute anything • that’s possible to compute
– given enough memory and time
• Assembly Language Programming
– How do we use processor instructions to implement algorithms? – How do we write modular, reusable code? (subroutines)
常用数制----二,十,十六进制
目前在计算机中,数几乎全部用二进制表示 为书写方便,微机中的二进制数用十六进制数缩写 人们最熟悉、最常用的是十进制数 为了区别3种不同数制,约定
数后加B表示二进制数 带D或不带字母符号表示十进制数 带H表示十六进制数
16
1.1.2 符号数的表示方法
Instruction Set Architecture Microarchitecture Circuits Devices
4
How do we solve a problem using a computer?
•A systematic sequence of transformations between layers of abstraction. Problem
Circuits
Devices
6
• Problem Statement
Descriptions of Each Level
– stated using "natural language" – may be ambiguous, imprecise
• Algorithm
– step-by-step procedure, guaranteed to finish – definiteness, effective computability, finiteness
31
进位丢失
判断补码运算有无溢出的方法:
设符号位向进位位的进位为CY,数值部分向符号位的 进位为CS,则溢出判别式为: OF=CY ⊕ CS 当OF=1时,有溢出;当OF=0时,无溢出
如:105+50
0110 + 0011 1001 1001 0010 1011 +
-105-50
1001 1100 0111 1110
• Digital Logic
– How do we build circuits to process information?
• Processor and Instruction Set (CS EI)
– How do we build a processor out of logic elements? – What operations (instructions) will we implement?
用数的符号和数值部分一起编码的方法表示符号
数
8位(字节)、16位(字)或32位(双字)机器数的最高 位是符号位。最高位为0→正数,为 1→负数
区分:机器数、真值、无符号数 掌握符号数的三种常用表示法:原码,反码,补 码
21
1.1.3 二进制数的加减运算
计算机把机器数均当作无符号数进行运算, 即符号位也参与运算 二进制加法规则: 0+0=0 0+1=1+0=1 1+1=0 →进位1 二进制减法规则: 0-0=0 1-0=1 1-1=0 0-1=1 →借位1
-50-5
1100 1110 + 1111 1011 1 1100 1001
1 0110
0101
CY=0, CS=1 OF=0 ⊕1=1, 有溢出
CY=1, CS=0 OF=1 ⊕0=1, 有溢出
CY=1, CS=1 OF=1⊕1=0, 无溢出
32
1.1.4 二进制数的逻辑运算与逻辑电路
(1)逻辑非→按位求反
– properties of materials, manufacturability
8
Many Choices at Each Level
Solve a system of equations
Red-black SOR Gaussian elimination C Intel x86 Pentium 4 C++ Jacobi iteration Java Atmel AVR Xeon Multigrid
30
说明: 将多位二进制数拆成多部分运算时,数的低位部 分均为无符号数,只有高位部分才为符号数 注意区分进位与溢出 溢出不同于补码运算中的进位或借位丢失 如: -50-5 = -55
1100 + 1111 11100 1110 1011 1001= -00110111B= -55 结果正确,无溢出
FORTRAN PowerPC Centrino
Tradeoffs: cost performance power (etc.)
Ripple-carry adder CMOS Bipolar
Carry-lookahead adder GaAs 9
• Bits and Bytes
– How do we represent information using electrical signals?
27
(1)无符号数的运算 两个无符号数相加----和为正数.当和超过 其位数所允许的范围时,向更高位进位,用CF表示 如:
1 )
59+164=3BH + 0A4H =0DFH
0011 + 1010 1101 1011 0100 1111
127+160=7FH+A0H =11FH=287
0111 + 1010 10001
如:A=01100001B,B=11001011B A=10011110B,B=00110100B (2)逻辑乘∧(逻辑与)→按位求“与” 规则:0∧0=0,0∧1=0,1∧0=0,1∧1=1 如:01100001B∧11001011B=0100 0001B
5
Deeper and Deeper…
Instr Set Architecture
Processor Design: choose structures to implement ISA Microarch Logic/Circuit Design: gates and low-level circuits to implement components Process Engineering & Fabrication: develop and manufacture lowest-level components
– cost
• cell phone, automotive engine controller, ...
– power
• cell phone, handheld video game, ...
3
Transformations Between Layers
Problems Algorithms
Language
12
四、成绩与考试
• 平时成绩20~30%作业采用抽改的方式进 行。要求独立作业,以便老师了解学习情 况。(作业一般周三交) • 期末考试80~70%闭卷。
13
第一章 微型计算机基础
• 计算机中的数和编码
– 数的表示 – 数的运算 – 符号的表示
பைடு நூலகம்
• 微型计算机的结构和工作原理
– 术语 – 基本结构 – 工作原理