Tải bản đầy đủ (.pdf) (406 trang)

Bài giảng Kiến trúc máy tính và hợp ngữ (GV Phạm Tuấn Sơn)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.74 MB, 406 trang )

Bài 01: Tổng quan máy tính

Phạm Tuấn Sơn



Non-digital Computer

/>
2


Thế hệ 1 – Bóng đèn chân khơng
(Vacuum Tube)

3


ENIAC (Electronic Numerical
Integrator And Computer)
1943
1946
1955

4


Thế hệ 2 - Transistor

10.000 transistors


IBM 7094

5


Thế hệ 3 – Integrated Circuit (IC)

6


Thế hệ 4… – Micro…

7


Ngày nay

8


Các thế hệ máy tính
Generation Approximate
Dates

Technology

1

1946-1957


Vacuum tube

2

1958-1964

Transistor

3

1965-1971

Small & medium scale integration
(up to 3.000 devices/chip)

4

1972-1977

Large scale integration (LSI)
(3.000-100.000 devices/chip)

1978-1991

Very large scale integration (VLSI)
(100.000-100.000.000 devices/chip)

1991-

Ultra large scale integration (ULSI)

(Over 100.000.000 devices/chip)

Typical Speed
(ops/s)
40.000
200.000
1.000.000
10.000.000
100.000.000
1.000.000.000
9


Quy luật Moore



Số lượng transistor
(tích hợp trong một
IC) tăng gấp đôi
mỗi 1.5 năm

Gordon Moore
Intel Cofounder
B.S. Cal 1950!
10


Sự phát triển…
• Processor

– Speed 2x / 1.5 years (since ’85) [slowing!]
– 100X performance last decade
– When you graduate: 4 GHz, 32 Cores

• Memory (DRAM)
– Capacity: 2x / 2 years (since ’96)
– 64x size last decade.
– When you graduate: 128 GibiBytes

• Disk
– Capacity: 2x / 1 year (since ’97)
– 250X size last decade.
– When you graduate: 8 TeraBytes
…Not nec all on one disk

Kilo (103) & Kibi (210)
ê

Mega (106) & Mebi (220)
ê

Giga (109) & Gibi (230)
ê

Tera (1012) & Tebi (240)
ê

Peta (1015) & Pebi (250)
ê


Exa (1018) & Exbi (260)
ê

Zetta (1021) & Zebi (270)
ê

Yotta (1024) & Yobi (280)


Quá trình sản xuất IC (Chip)
(Semiconductor)

Packaged IC

Printed circuit board
12


Cấu trúc và hoạt động máy tính

John von Neumann

Máy tính
Bộ xử lý
Bộ nhớ chính
(Central
(Main
Processing
Memory)
Unit)

Hệ thống
kết nối
(Bus)
Thiết bị
nhập xuất
(Input
Output)
13


Mơ hình phân lớp hệ thống máy tính

Application (ex: browser)
Compiler

Software
Hardware

Assembler

Operating
System
(Mac OSX)

Processor Memory I/O system

Instruction Set
Architecture

Datapath & Control

Digital Design
Circuit Design
transistors

14


Tham khảo
• Chương 1, P&H

15


Bài 02: Số nguyên
Phạm Tuấn Sơn



Hệ cơ số 10
• A = 123 = 100 + 20 + 3 = 1ì102 + 2ì101 + 3ì100
ã Tng quát số hệ cơ số q
Xn-1…X1X0 = Xn-1×qn-1 + … + X1×q1 + X0×q0
Mỗi chữ số Xi lấy từ tập X có q phần tử
• q=2, X={0,1} : hệ nhị phân (binary)
• q=8, X={0,1,2,..7} : hệ bát phân (octal)
• q=10, X={0,1,2,…9} : hệ thập phân (decimal)
• q=16, X={0,1,2,..9,A,B,..F} : hệ thập lục phân
(hexadecimal)
A = 123d = 01111011b = 173o = 7Bh
2



Hệ nhị phân









Xn-1…X1X0 , X={0,1}
Được dùng nhiều trong máy tính. Tại sao ?
n gọi là chiều dài bit của số đó
Bit trái nhất Xn-1 là bit có giá trị nhất (MSB)
Bit phải nhất X0 là bit ít có giá trị nhất (LSB)
Giá trị thập phân:
Xn-1×2n-1 + … + X1×21 + X0×20
0000 – 0
0001 – 1
Phạm vi biểu diễn: từ 0 đến 2n-1
0010 – 2
Để chuyển đổi sang hệ 16, chỉ cần gom 0011 – 3
0100 – 4
từng nhóm 4 bit từ phải sang trái
0101 – 5
Ví dụ: A = 01111011b
0110 – 6
0111 – 7

= 7
B h

1000 – 8
1001 – 9
1010 – A
1011 – B
1100 – C
1101 – D
1110 – E
1111 – F
3


Bits có thể biễu diễn mọi thứ !
• Ký tự?
– 26 ký tự  5 bits (25 = 32)
– Ký tự hoa/ thường + dấu
 7 bits (in 8) (“ASCII”)
– Bảng mã chuẩn cho tất cả ngôn ngữ trên thế giới
 8,16,32 bits (“Unicode”) www.unicode.com

• Giá trị luận lý (logic)?
– 0  False, 1  True

• Màu sắc ? Ví dụ: Red (00) Green (01)
• Địa chỉ ? Lệnh ?
• Bộ nhớ: N bits  2N ô nhớ

Blue (11)


4


Biểu diễn số âm
• Số khơng dấu (unsigned number)

00000

00001 ... 01111 10000 ... 11111

• Lượng dấu (sign and magnitude)
– Qui định MSB là dấu
00000
0+ 1–

11111 ... 10001 10000

00001 ...

Binary
odometer

01111

0x00000000 và 0x80000000 ???

• Bù 1 (One‟s Complement)
– Lấy bit bù
00000 00001 ...

10000 ... 11110 11111

Binary
odometer

Binary
odometer

01111

0x00000000 và 0xFFFFFFFF5 ???
Phạm vi biễu diễn


Số bù 2
• Khắc phục vấn đề có 2 biểu diễn số 0 khác nhau?
– 0000 và 1111 ?
– Lấy bù rồi cộng thêm 1

• Như số lượng dấu và số bù 1, số bắt đầu bằng 0
là số dương, số bắt đầu bằng 1 là số âm
– 000000...xxx : ≥ 0, 111111...xxx : < 0
– 1…1111 là -1, không phải -0 (như số bù 1)

• Giá trị thập phân của biểu diễn dạng bù 2
Xn-1×(-2n-1) + Xn-2×(2n-2) + … + X1×21 + X0×20
Phạm vi biểu diễn: từ -2n-1 tới 2n-1 – 1
Ví dụ: 11010110 = -27 + 26 + 24 + 22 + 21 = -42
6



Ví dụ số bù 2
+123 = 01111011b
-123 = 10000101b
0 = 00000000b
-1 = 11111111b
-2 = 11111110b
-3 = 11111101b
-127 = 10000001b
-128 = 10000000b

Đổi dấu:
-3  +3  -3
x : 1101 b
x‟: 0010 b
+1: 0011 b
()‟: 1100 b
+1: 1101 b

7


Phạm vi biểu diễn số bù 2

8


Sign extension
• Chuyển số bù 2 từ biểu diễn n bit thành
biểu diễn m bit (với m>n)

• Giá trị của các bít từ n+1 tới m là giá trị của
MSB
–Chuyển giá trị -4 từ biểu diễn16-bit thành biểu
diễn 32-bit:
1111 1111 1111 1100two
1111 1111 1111 1111 1111 1111 1111 1100two


Biểu diễn Bias số N=5 bit

00000 00001
11111
11110
00010
-15
-14
16
11101
15
-13
14
11100
13
.
.
.
.
.
.
-1

2 1

0

• Bias cho số N
bits là (2N-1-1)
• Giá trị =
unsigned
- bias
• 1 số zero
• Bao nhiêu số
01110
dương?

10001 10000 01111
01111 10000 ... 11110 11111
00000 00001 ... 01110

Binary

10


×