Ea 1 - KTMT1
Ea 1 - KTMT1
Ea 1 - KTMT1
[main contents]
• COMPUTER : COMPUTER
ARCHITECTURE/ENGINEERING
• ELECTRONIC MEASUREMENTS: INDICATION
STRUCTURE
• RADIO, VIDEO TECHNOLOGY
• MICROCONTROLLER: DATA PROCESSING WITH IC
8051- Proteus simulation.
• ARTIFICIAL INTELLIGENCE [optional]
KTMT-CRDT
ĐIỆN TỬ ỨNG DỤNG
[các nội dung chính]
MÁY TÍNH : KIẾN TRÚC/KỸ THUẬT MÁY
TÍNH
ĐO LƯỜNG ĐIỆN TỬ: CƠ CẤU CHỈ THỊ
KỸ THUẬT RADIO, VIDEO Analog, digital.
VI ĐIỀU KHIỂN: XỬ LÝ DỮ LIỆU VỚI 8051-
mô phỏng Proteus. (uProcessor)
ARTIFICIAL INTELLIGENCE [optional]
KTMT-CRDT
KỸ THUẬT MÁY TÍNH
COMPUTER ARCHITECTURE
VL-CRĐT
3
Thực hành
KTMT-CRDT
Practice
KTMT-CRDT
Tổng quan
Lịch sử phát triển và các thế hệ máy tính.
Hoạt động và các bộ phận chính máy tính
■ Thiết bị Input
■ Thiết bị Output
■ Thiết bị xử lý
■ Thiết bị lưu trữ
Lắp ráp cài đặt máy vi tính.
KTMT-CRDT
Khái niệm chung
KTMT-CRDT
Khái niệm chung
KTMT-CRDT
Khái niệm chung
KTMT-CRDT
Khái niệm chung
10
KTMT-CRDT
Mô hình phân lớp
11
KTMT-CRDT
Chức năng
Chức năng(Computer Function): là mô tả hoạt động của
hệ thống hay từng thành phần của hệ thống.
Chức năng chung của một hệ thống bao gồm:
Xử lý dữ liệu.
Lưu trữ dữ liệu.
Vận chuyển dữ liệu.
Điều khiển
12
KTMT-CRDT
Phân loại
Phân loại theo phương pháp truyền thống
13
KTMT-CRDT
Phân loại
Máy để bàn:
là loại máy thông dụng nhất hiện nay.
bao gồm máy tính cá nhân (PC: Personal Computer)
và trạm (Workstation Computer).
giá 100$ đến 10.000$
Máy chủ
là máy phục vụ (server)
dùng trong mạng theo mô hình Client/Server
có tốc độ, hiệu năng, bộ nhớ và độ tin cậy cao
giá vài chục nghìn đến vài chục triệu đô
14
KTMT-CRDT
Phân loại
Máy tính nhúng (Embedded Computer)
được đặt trong nhiều thiết bị khác nhau để điều khiển
thiết bị làm việc
được thiết kế chuyên dụng
ví dụ: điện thoại di động, bộ điều khiển các thiết gia
đinh, PDA, Router định tuyến,…
15
KTMT-CRDT
Sự phát triển của máy tính
16
KTMT-CRDT
ENIAC
(Electronic Numerical Integrator And
Computer)
Nặng 30 tấn
Kích thước 140 m2
18000 đèn điện tử và 1500 rơle
5000 phép cộng/giây
Xử lý theo số thập phân
Bộ nhớ chỉ lưu trữ dữ liệu
Lập trình bằng cách thiết lập vị trí của
các chuyển mạch và các cáp nối.
17
KTMT-CRDT
Máy tính IAS (Institute for
Advanced Studies)
18
KTMT-CRDT
Sự phát triển của máy tính
19
KTMT-CRDT
Sự phát triển của máy tính
KTMT-CRDT
Các thế hệ Pentium
Name SB Dim Size
Pentium P5 0.3 um It contained 3.1
Pentium million transistors
OverDrive and measured 16.7
mm by 17.6 mm for
an area of 293.92
mm2
Pentium P6 0.25 um,
Pro: Pen 180 nm
II-III
Pen IV, Pen Netburst 130 nm
D
Pentium M P6 90-45 nm
Core
Pentium 45 nm
Dual-Core
Pentium Yvy, Skylake.. 45- 14 nm 21
KTMT-CRDT
…
Định luật Gordon Moore
1965 : Định luật Moore : Định luật ban đầu :
"Số lượng transistor trên mỗi đơn vị inch vuông
sẽ tăng lên gấp đôi sau mỗi năm."
(1 inch vuông xấp xỉ 6,45 cm²).
Năm 2000 định luật được sửa đổi là sau mỗi chu kỳ 18 tháng.
22
KTMT-CRDT
Sự phát triển của máy tính
23
KTMT-CRDT
24
KTMT-CRDT
Sơ đồ cấu trúc cơ bản của máy tính
Bộ xử lý trung tâm (CPU): Điều khiển hoạt động của máy tính
và xử lý số liệu
Hệ thống nhớ: chứa chương trình và dữ liệu đang được xử lý.
Hệ thống vào/ra (I/O: Input/Output) : trao đổi thông tin giữa
bên ngoài và bên trong máy tính
Liên kết hệ thống (Interconnection): kết nối và vận chuyển
thông tin giữa các thành phần với nhau
25
KTMT-CRDT
Sơ đồ cấu trúc cơ bản của máy tính
26
KTMT-CRDT
Mô hình máy tính cơ bản
Control
Processing
outp
input
ut
Memory
CPU
27
KTMT-CRDT
Mô hình máy tính cơ bản
Hầu hết các máy tính hiện nay đều có chung cấu trúc
và chức năng dạng Von Neumann.
29
KTMT-CRDT
(PCI - Peripheral Component Interconnect)
THÀNH PHẦN CƠ BẢN
CỦA MÁY TÍNH
Đơn vị xử lý trung tâm
Thiết bị nhập
■ Bàn phím, Chuột (Nhập chuẩn)
■ Thiết bị đọc
■ Các thiết bị số hóa
Thiết bị xuất
■ Xuất ra màn hình (Xuất chuẩn)
■ Xuất ra giấy
■ Xuất ra âm thanh
■ Làm việc với máy tính khác
Thiết bị lưu trữ
■ Đĩa từ tính
■ Đĩa từ quang
■ Đĩa quang học
Đường truyền, cổng, thiết bị ngoại vi
30
KTMT-CRDT
THÀNH PHẦN CƠ BẢN
TRONG CPU (Central processing unit)
Case:
■ Nguồn (Power Supply)
■ Mainboard
■ CPU
■ RAM
■ Card màn hình (VGA Card Adapter)
■ Ổ đĩa cứng HDD
■ Ổ đĩa mềm FDD
■ Ổ đĩa CD Rom/Rewrite/DVD…
■ Vào USB
31
KTMT-CRDT
Bo mạch chủ:
Motherboard hay Mainboard và thường được nhiều
người gọi tắt là: mobo, main.
32
KTMT-CRDT
Bộ nhớ sơ khai: đục lỗ
33
KTMT-CRDT
RAM
6 transistor FET
trong một ô nhớ của RAM tĩnh
34
KTMT-CRDT
Hard disk
CẤU TẠO:
Một hoặc nhiều đĩa lắp đồng trục. Các đĩa phẳng chế tạo bằng nhôm
hoặc thuỷ tinh với lớp bột từ rất mỏng (khoảng 10 -20nm) phủ
trên bề mặt đĩa để lưu thông tin .Đĩa lưu thông tin trên cả hai mặt
(side)
Rãnh : đường tròn đồng tâm trên mặt đĩa để lưu thông tin. Các rãnh được đánh số từ 0 theo
trật từ từ phía ngoài đĩa vào trong tâm và mỗi mặt đĩa có thể chứa hàng ngàn rãnh.
Tiếp theo rãnh, mặt trụ (cylinder) là tập hợp của các rãnh ở các mặt đĩa khác nhau nằm trên
cùngmột vị trí đầu từ. Cung là một phần của rãnh trên bề mặt đĩa và là đơn vị lưu trữ nhỏ
nhất có thể quản lý của đĩa. Kích thước thông dụng của mỗi cung là 512 bytes.
Với ổ đĩa cứng, ba tham số sử dụng để tính dung lượng đĩa: Số lượng mặt trụ (C), số
lượng đầu từ (H) và số lượng cung trong một rãnh (S).
35
KTMT-CRDT
36
KTMT-CRDT
SSD DISK
Ghi dữ liệu trên các chip
Không có motor cơ học
Dùng VĐK riêng
37
KTMT-CRDT
First IC by MS 1964
38
KTMT-CRDT
Kỹ thuật quang khắc PLT
Transito
Lắng đọng
Khí photpho.. Tạo bán dẫn n 39
KTMT-CRDT
First CPU by Intel
40
KTMT-CRDT
Inside CPU Chip now
41
KTMT-CRDT
Iphone i7
IC A10
3.3 tỷ transistor
/cm
42
KTMT-CRDT
CD, DVD-ROM, Blue-ray(BD)
CD : 1979
DVD : 1993
BD: 2000
HD DVD : 2007
43
KTMT-CRDT
44
KTMT-CRDT
Sự phân cấp bộ nhớ
45
KTMT-CRDT
Sự phân cấp bộ nhớ
Một sự phân cấp bộ nhớ kiểu mẫu được chỉ ra trên hình
sau. Khi chúng ta đi từ trên xuống trong sơ đồ phân cấp
này, những sự kiện sau sẽ xảy ra:
■ Giảm phí tổn cho một bit
■ Tăng dung lượng
■ Tăng thời gian truy cập
■ Giảm tần số truy cập bộ nhớ bởi CPU
Do vậy những bộ nhớ nhỏ hơn, nhanh hơn, đắt tiền hơn
được phụ trợ bởi bộ nhớ lớn hơn, chậm hơn, rẻ hơn. Chìa
khóa cho sự thành công trong cách tổ chức này là yếu tố
cuối cùng : Giảm thiểu tần số truy cập.
46
KTMT-CRDT
Sự phân cấp bộ nhớ
47
KTMT-CRDT
Sự phân cấp bộ nhớ
48
KTMT-CRDT
49
KTMT-CRDT
BỘ NHỚ CHÍNH BÁN DẪN
Tất cả các kiểu bộ nhớ được khảo sát trong phần này thuộc về
loại truy cập ngẫu nhiên. Tức là từng word nhớ được truy cập
trực tiếp qua luận lý định địa chỉ.
Các kiểu bộ nhớ bán dẫn chính gồm có:
■ Bộ nhớ truy cập ngẫu nhiên (RAM Random Access Memory )
■ Bộ nhớ chỉ đọc (ROM Read-Only Memory )
■ Bộ nhớ chỉ đọc khả trình (PROM Prorammable Read-only
memory )
■ Bộ nhớ chỉ đọc khả trình có thể xóa được (EPROM Erasable
Programmable Read-Only Memory )
■ Bộ nhớ flash (USB)
■ Bộ nhớ chỉ đọc khả trình có thể xóa được về mặt điện tử
(EEPROM Electrically Erasable Programmable Read-Only Memory )
50
KTMT-CRDT
So sánh các bộ nhớ
51
KTMT-CRDT
Thanh ghi (Register)
Thanh ghi : một bộ nhớ dung lượng nhỏ và rất nhanh
được sử dụng để tăng tốc độ xử lý của các chương
trình máy tính bằng cách cung cấp các truy cập trực
tiếp đến các giá trị cần dùng.
Mỗi thanh ghi có 1 chức năng khác nhau đảm nhận
chính xác giá trị dữ liệu đưa vào mỗi thanh ghi.
Mỗi hệ thống khác nhau sẽ có các thanh ghi khác
nhau
52
KTMT-CRDT
Thanh ghi
53
KTMT-CRDT
Thanh ghi điển hình
54
KTMT-CRDT
55
KTMT-CRDT
56
KTMT-CRDT
Địa chỉ nhớ
57
KTMT-CRDT
Thanh ghi (vị trí)
xxxxx ALU Thanh ghi lệnh PC
KTMT-CRDT
59
KTMT-CRDT
60
KTMT-CRDT
BỘ NHỚ CACHE
61
KTMT-CRDT
BỘ NHỚ CACHE
NGUYÊN LÝ
Bộ nhớ cache chứa bản sao của một phần bộ nhớ chính. Khi
CPU cố gắng đọc một word từ bộ nhớ, word này sẽ được
kiểm tra xem có trong cache hay không. Nếu có, word đó sẽ
được cung cấp ngay cho CPU. Trong trường hợp ngược lại,
một khối bộ nhớ chính, bao gồm một lượng cố định các
word sẽ được đọc vào trong cache và sau đó word đó sẽ
được cung cấp cho CPU.
62
KTMT-CRDT
63
KTMT-CRDT
64
KTMT-CRDT
BỘ NHỚ CACHE
65
KTMT-CRDT
Thao tác đọc cache
66
KTMT-CRDT
Bộ xử lý trung tâm
(CPU: Central Processing Unit)
Chức năng: Điều khiển toàn bộ hoạt động của máy tính.
Xử lý dữ liệu (vd: các phép toán số học và logic)
Nguyên tắc hoạt động: CPU hoạt động theo chương trình nằm
trong bộ nhớ chính.
67
KTMT-CRDT
CPU diagram
68
KTMT-CRDT
Họ VXL 8086
69
KTMT-CRDT
Bộ xử lý trung tâm
70
KTMT-CRDT
Bộ nhớ
Chức năng: Lưu trữ chương trình và dữ liệu.
Các thao tác cơ bản:
Thao tác đọc dữ liệu (Read)
Thao tác ghi dữ liệu (Write)
Các thành phần chính
Bộ nhớ trong (Internal Memory)
Bộ nhớ ngoài (External Memory)
71
KTMT-CRDT
Chức năng và đặc điểm
Chứa thông tin mà CPU có thể trao đổi trực tiếp
Tốc độ rất nhanh
Dung lượng không lớn
Sử dụng bộ nhớ bán dẫn RAM, ROM
Các loại bộ nhớ
Bộ nhớ chính (Main memory)
Bộ nhớ Cache (Cache Memory) hay gọi bộ nhớ
đệm
Chứa chương trình và dữ liệu đang được sử dụng bởi
CPU
Bộ nhớ chính được tổ chức thành các ngăn nhớ và
được đánh địa chỉ
Ngăn nhớ thường được tổ chức theo byte
Nội dung của một ngăn nhớ có thể thay đổi nhưng địa
chỉ vật lý của nó đa được đánh là không thay đổi
72
KTMT-CRDT
Bộ nhớ ngoài(External memory)
73
KTMT-CRDT
Bộ nhớ kiểu RAID
🡪Rfile
74
KTMT-CRDT
Hệ thống vào ra (Input/Output System)
Chức năng: trao đổi thông tin giữa máy tính với thế
giới bên ngoài.
Thao tác cơ bản
Vào dữ liệu (In)
Ra dữ liệu (Out)
Các thành phần chính
Thiết bị ngoại vi (Peripheral Devices)
Các Module I/O (IO Module)
75
KTMT-CRDT
76
KTMT-CRDT
Thiết bị ngoại vi (Peripherals)
KTMT-CRDT
Module vào ra
78
KTMT-CRDT
Hoạt động của máy tính
79
KTMT-CRDT
CPU structure
80
KTMT-CRDT
Nhận lệnh (Fetch)
Bắt đầu mỗi chu kỳ lệnh là CPU tiến hành lấy lệnh từ
bộ nhớ chính. Trong quá trình lấy và thực hiện lệnh có
2 thanh ghi CPU mà ta quan tâm đó PC (Program
Counter)và thanh ghi IR (Instruction Register)
Bộ đếm chương trình thanh ghi PC giữ địa chỉ của
Lệnh sẽ được nhận.
CPU lấy lệnh từ ngăn nhớ được trỏ bởi PC đưa vào
thanh ghi lệnh IR lưu giữ
Sau mỗi lệnh được nhận thì nội dung của thanh ghi PC
tự động tăng để trỏ tới lệnh kế tiếp sẽ được thực hiện.
KTMT-CRDT
Thực hiện một chương trình
82
KTMT-CRDT
Xét d=a+b×c, khi a=5,b=3,c=11
83
KTMT-CRDT
Xét d=a+b×c, khi a=5,b=3,c=11
Sơ đồ bộ nhớ
trình bày chu
trình dữ liệu
vào
84
KTMT-CRDT
Thực hiện chương trình máy
27 + 26 + 23+21 + 20 = 128 + 64 + 8
+ 2 + 1 = 203.
85
KTMT-CRDT
CPU thực hiện lưu giá trị trên thanh ghi. VD
này cho thấy đầu tiên nó đặt giá trị R1 là
100, lấy giá trị từ vị trí 0x100 vào R2, bổ
sung hai giá trị cùng nhau và đặt kết quả
vào R3 cuối cùng lưu giá trị mới trên R4
86
KTMT-CRDT
Sơ đồ đơn giản mô tả bên trong CPU
87
KTMT-CRDT
..instruction
You can see the instructions come in and are decoded by the processor. The CPU has
two main types of registers, those for integer calculations and those for floating
point calculations. Floating point is a way of representing numbers with a decimal
place in binary form, and is handled differently within the CPU. MMX (multimedia
extension) and SSE (Streaming Single Instruction Multiple Data) or Altivec registers
are similar to floating point registers.
A register file is the collective name for the registers inside the CPU. Below that we
have the parts of the CPU which really do all the work.
We said that processors are either loading or storing a value into a register or from a
register into memory, or doing some operation on values in registers.
The Arithmetic Logic Unit (ALU) is the heart of the CPU operation. It takes values in
registers and performs any of the multitude of operations the CPU is capable of. All
modern processors have a number of ALUs so each can be working independently. In
fact, processors such as the Pentium have both fast and slow ALUs; the fast ones are
smaller (so you can fit more on the CPU) but can do only the most common
operations, slow ALUs can do all operations but are bigger.
The Address Generation Unit (AGU) handles talking to cache and main memory to get
values into the registers for the ALU to operate on and get values out of registers
back into main memory.
Floating point registers have the same concepts, but use slightly different
terminology for their components.
88
KTMT-CRDT
Lược đồ Chương trình
89
KTMT-CRDT
Ngắt (Interrupt)
90
KTMT-CRDT
91
KTMT-CRDT
Ngắt (Interrupt)
Sau khi hoàn thành một lệnh, bộ xử lý kiểm tra tín hiệu
ngắt.
Nếu không có ngắt thì bộ xử lý tiếp tục nhận lệnh tiếp
theo.
Nếu có tín hiệu ngắt:
Tạm dừng chương trình đang thực hiện. Cất ngữ cảnh
(thông tin có liên quan đến chương trình đang thực hiện).
Thiết lập bộ đếm chương trình PC trỏ đến chương trình
con phục vụ ngắt
Thực hiện chương trình con phục vụ ngắt.
Cuối chương trình con phục vụ ngắt. Khôi phục lại ngữ
cảnh và tiếp tục chương trình đang bị tạm dừng.
92
KTMT-CRDT
Ngắt (Interrupt)
93
KTMT-CRDT
Vào /ra (IO)
94
KTMT-CRDT
Cấu trúc BUS
95
KTMT-CRDT
Cấu trúc BUS
BUS địa chỉ :
96
KTMT-CRDT
Cấu trúc BUS
Ví dụ: Bus địa chỉ của một số bộ VXL là
8088/8086 n=20 220(1MB)
80286 n=24 224(16MB)
80386…Pentium n=32 232(4GB)
Pentium II, III,IV n=36 236(64GB)
97
KTMT-CRDT
Cấu trúc BUS
BUS dữ liệu:
Chức năng: vận chuyển lệnh từ bộ nhớ -> CPU, vận
chuyển dữ liệu giữa CPU, bộ nhớ và cổng vào ra.
Độ rộng của Bus dữ liệu (D0,D1,….Dm-1)
Cho biết số byte có khả năng trao đổi đồng thời
m=8,16,32,64,128 bit.
Ví dụ:
8088 -> m=8
8086 -> m=16
80386 -> m=32
Pentium -> m=64
98
KTMT-CRDT
Cấu trúc BUS
BUS điều khiển:
Tập hợp các tín hiệu điều khiển gồm có
Các tín hiệu phát ra từ CPU để điều khiển Module nhớ
và Module vào ra.
Các tín hiệu từ Module nhớ, Module vào ra gởi đến
CPU yêu cầu.
Ngoài ra còn là BUS cung cấp nguồn tín hiệu xung
nhịp (clock) với các BUS đồng bộ.
Một số tín hiệu điển hình
99
KTMT-CRDT
Cấu trúc BUS
Tín hiệu (MemR) điều khiển đọc dữ liệu từ bộ nhớ từ
ngăn nhớ xác định. (IOR) Tín hiệu đọc dữ liệu từ một
cổng vào ra.
Tín hiệu (MemW) điều khiển ghi dữ liệu có sẵn trên
BUS dữ liệu đến một ngăn nhớ xác định. Tín hiệu
điều khiển (IOW) ghi dữ liệu có sẵn ra cổng.
Interrupt Request(INTR) tín hiệu yêu cầu ngắt từ các
thiết bị ngoại vi
Interrupt Acknowlegde(INTA) tín hiệu chấp nhận ngắt
phát ra từ CPU
Ngoài ra còn có các tín hiệu khác như: t/h yêu cầu và
chấp nhận CPU chuyển nhượng BUS (BRQ,BGT),…
100
KTMT-CRDT
Cấu trúc BUS
Đặc điểm của cấu trúc đơn BUS.
Có nhiều thành phần nối vào một BUS chung.
Tại một thời điểm chỉ phục vụ được một yêu cầu trao
đổi dữ liệu.
Các thành phần nối vào BUS có thể có tốc độ khác
nhau.
Các module nhớ và module vào ra phụ thuộc vào cấu
trúc của CPU.
Khắc phục:
Xây dựng cấu trúc đa BUS bao gồm các hệ thống
BUS khác nhau về tốc độ.
Trong hầu hết các máy PC bus được phân 3 cấp và
các bus nối với nhau thông qua cầu nối BUS
101
KTMT-CRDT
Pentium IV
102
KTMT-CRDT
103
KTMT-CRDT
VÍ DỤ CẤU HÌNH CƠ BẢN
104
KTMT-CRDT
Tổng hợp
105
KTMT-CRDT
Chương 2 – Dữ liệu và
số học máy tính
106
KTMT-CRDT
1 - Các hệ đếm cơ bản
Hệ thập phân (Decimal System): con
người sử dụng
Hệ nhị phân (Binary System): máy tính sử
dụng
Hệ thập lục phân (Hexadecimal System):
dùng biểu diễn rút gọn cho số nhị phân
Cách chuyển đổi giữa các hệ đếm.
107
KTMT-CRDT
Hệ thập phân (decimal)
n n-1 n-2 -m
Gíá trị của A hiểu là A=an.10 + an-1.10 +an-2.10 +…+a-m.10
108
KTMT-CRDT
Ví dụ
Số thập phân 456,98:
456,98=
4x102+5x101+6x100+9x10-1+8x10-2
109
KTMT-CRDT
Mở rộng hệ cơ số r>1
Có thể sử dụng r chữ số có giá trị riêng từ 0 đến r-1
để biểu diễn số, số A theo cơ số r có dạng
A=anan-1an-2an-3….a1a0, a-1a-2a-m
n n-1 n-2 -m
Khi đó giá trị của A là A=an.r + an-1.r +an-2.r +…+a-m.r
110
KTMT-CRDT
111
KTMT-CRDT
Ví dụ
112
KTMT-CRDT
Biến đổi thập phân sang nhị phân
Phần nguyên và phần lẻ riêng rẽ
Chuyển đổi phần nguyên
■ Cách 1, chia dần số đó cho 2, xác định phần
dư, viết số dư theo chiều ngược lại,
Ví dụ: Chuyển 105(10) sang hệ nhị phân
113
KTMT-CRDT
Ví dụ
Đổi 23.37510 sang nhị phân. Chúng ta sẽ chuyển đổi phần
nguyên dùng phương thức số dư:
max
114
KTMT-CRDT
Biến đổi thập phân sang nhị phân
(chuyển phần nguyên)
■ Cách 2: phân tích số đó thành tổng các lũy
thừa của 2, sau đó dựa vào các số mũ xác định
dạng biểu diễn nhị phân.
115
KTMT-CRDT
Biến đổi thập phân sang nhị phân
Chuyển đổi phần lẻ: nhân phần lẻ với 2 rồi
lấy phần nguyên, sau đó viết phần nguyên
theo chiều thuận:
116
KTMT-CRDT
Hệ hexa (16)
117
KTMT-CRDT
Chuyển đổi giữa các hệ (đầy đủ)
118
KTMT-CRDT
Ví dụ
119
KTMT-CRDT
Hexa thập phân: 3A8C=?
3A8C (16) = 3 x 163 + 10 x 162 + 8 x 161 +12 x 160
= 12288 + 2560 + 128 + 12 = 14988(10)
120
KTMT-CRDT
Qui tắc tính toán
1+0=1
0+1=1
0+0=0
1+1=0 nhớ 1
Ví dụ:
0101+0111=12(10)
0-0=0
0-1=1 mượn 1
1-0=1
1-1=0
121
KTMT-CRDT
2 Mã hoá và lưu trữ dữ liệu máy tính
122
KTMT-CRDT
Nguyên tắc mã hóa dữ liệu
Mã hóa dữ liệu tự nhiên:
Phổ biến là các tín hiệu vật lý như âm thanh, hình ảnh, ...
Các dữ liệu tự nhiên cần được số hóa (digitalized) trước khi
đưa vào máy tính.
Sõ đồ mã hóa và tái tạo tín hiệu vật lý:
123
KTMT-CRDT
Thứ tự lưu các byte dữ liệu
124
KTMT-CRDT
Thứ tự lưu các byte dữ liệu
Ví dụ: lưu trữ một từ 32bit
0001 1010 0010 1011 0011 1100 0100 1101B
1A2B3C4DH
Biểu diễn trong ngăn nhớ theo 2 cách
KTMT-CRDT
Thứ tự lưu các byte dữ liệu
126
KTMT-CRDT
3. Biểu diễn số nguyên
Máy tính biểu diễn số nguyên chia thành 2 loại
Biểu diễn số nguyên không dấu (unsign integer)
Biểu diễn số nguyên có dấu (sign integer)
Số nguyên không dấu:
Giả sử dùng n bit để biểu diễn số nguyên không dấu->
dải mà n bit biểu diễn được từ 0 -> 2n-1. Giá trị của số
nguyên đó được tính:
Dải miền trị của số nguyên không dấu được biểu bằng
hình tròn
Giá trị nhỏ nhất bằng 0
Giá trị lớn nhất bằng 2n-1
127
KTMT-CRDT
Số nguyên không dấu
128
KTMT-CRDT
Số nguyên có dấu
Số bù một và số bù hai
Số bù hai: có giá trị âm của số nguyên tương ứng
ĐN: Cho một số nhị phân N được biểu diễn bởi n
bit. Ta có
Số bù một của N bằng (2n-1)-N
Số bù hai của N bằng 2n-N
Ví dụ: Cho số N = 0001 00012 được biểu diễn
bởi n=8bit. Xác định__số bù 1 và bù 2 của N.
Theo công thức 1111 1111 (2n-1)
0001 0001 N
số bù một của N 1110 1110
129
KTMT-CRDT
Số nguyên có dấu
Nhận xét:
- số bù một của một số N được xác định bằng cách đảo các bit
trong N
-số bù hai của một số N được xác định bằng cách lấy số bù một
của N cộng thêm 1
130
KTMT-CRDT
- The 1s complement of a binary number is created by
transforming bit 1 to 0 and 0 to 1;
- The 2s complement of a binary number is generated by
adding one to the 1s complement of a binary number.
131
KTMT-CRDT
Số nguyên có dấu
Giả sử dùng n bit để biểu diễn số nguyên có dấu-> dải
mà n bit biểu diễn được từ (- 2n-1 ..-1,0 .. 2n-1-1). Giá trị
của số nguyên đó được tính theo 2 phần riêng biệt:
Phần giá trị dương (0 -> 2n-1-1).
Phần giá trị âm (- 2n-1…-1).
Giá trị nhỏ nhất bằng - 2n-1
Giá trị lớn nhất bằng +2n-1-1
132
KTMT-CRDT
Số nguyên có dấu
Trong đó: Bít có trọng số cao nhất (hay bit ngoài cùng
bên trái của dãy nhị được máy tính sử dụng để biểu diễn
dấu của giá trị) và qui ước:
= 0 : thì số nhị phân cần tính giá trị là số dương.
Dạng tổng quát là: 0an-2an-3…a0
= 1 : thì số nhị phân cần tính giá trị là số âm.
Dạng tổng quát là: 1an-2an-3…a0
KTMT-CRDT
Ví dụ
A
1011 0101
-27 +25’,,,,,,
134
KTMT-CRDT
Đáp án
135
KTMT-CRDT
Ví dụ
Ví dụ 2: Biểu diễn số nguyên có dấu sau đây A=+97 và
B=-101 theo hai dạng kiểu n = 8bit và n = 16bit trong máy
tính.
136
KTMT-CRDT
Đáp án
137
KTMT-CRDT
138
KTMT-CRDT
Ví dụ
số −5 được biểu diễn trong máy tính theo phương pháp bù
1 (với mẫu 8 bit): đầu tiên, xác định số 5 được biểu diễn
trong máy tính: 0000 0101. Tiếp theo, đảo tất cả các bit có
trong số 5: kết quả sau khi đảo: 1111 1010. Vì là biểu diễn
số âm nên bit bên trái cùng luôn giữ là 1.
Vậy với phương pháp bù 1, số −5 được biểu diễn trong máy
tính như sau: 1111 1011
139
KTMT-CRDT
Ví dụ
Cộng hai số thập phân −5 với 2 (mẫu 8 bit):
1111 1011 (số bù 2 của 5)
+ 0000 0010 (số 2 ở hệ nhị phân)
========
1111 1101 (số bù 2 của 3)
140
KTMT-CRDT
VD
-50
50
-15
-65
141
KTMT-CRDT
VD
11001110 : -50
00110010 : 50
11110001 : -15
10111111 : -65
142
KTMT-CRDT
VD Tràn số
1010 (số bù 1 của −5)
+ 1001 (số bù 1 của −6)
======
0011 (còn nhớ 1)
+ 1
======
0100 (4)
143
KTMT-CRDT
Biểu diễn số thực
Quy ước: "dấu chấm" (point) được hiểu là kí hiệu
ngăn cách giữa phần nguyên và phần thập phân của 1 số thực.
144
KTMT-CRDT
Số dấu chấm tĩnh
Sô bit dành cho phần nguyên và sô bit
phần lẻ là cố định.
Giả sử :
U(a,b) là tập các số dấu chấm tĩnh không dấu có a
bit trước dấu chấm và b bit sau dấu chấm.
A(a,b) là tập các số dấu chấm tĩnh có dấu có a bit
(không kể bit dấu) trước dấu chấm và b bit sau dấu
chấm.
145
KTMT-CRDT
Ðặc điểm của số dấu chấm tĩnh
146
KTMT-CRDT
Dấu chấm động
Cho hai giá trị:
Để lưu trữ con số này thì máy tính cần đến số bit rất
lớn. Như vậy, trong trường hợp này thì loại số có dấu
chấm tĩnh sẽ rất bất tiện. Vì vậy tất cả máy tính lưu trữ
những số trên dưới dạng dấu chấm động (floating point)
1.990 x 1033 và 0.910956x 10-27 hay theo số khoa học là :
1.999E+33 và 0.910956E-27.
147
KTMT-CRDT
Dấu chấm động tổng quát
Dạng tổng quát
Cơ số 2:
X=(-1)s ×1.M × 2e-b
Trong đó: s: là bit dấu (s=0 phần định trị là dương; s=1 phần
định trị là âm)
M : là phần định trị.
E = e – b : là số mũ được dịch chuyển đi b đơn vị.
Với R cố định thì để lưu trữ X ta chỉ cần lưu trữ M và E (dưới
dạng số nguyên)
148
KTMT-CRDT
Chuẩn IEEE 754-1985
149
KTMT-CRDT
Chuẩn IEEE 754 hiện nay
Chuẩn IEEE 754 đưa ra nhiều định dạng rất gần nhau, chỉ khác nhau ở một ít chi tiết.
Năm trong số những định dạng này được gọi là định dạng cơ bản, và hai trong chúng
đặc biệt được dùng rộng rãi trong cả phần cứng máy tính và ngôn ngữ lập trình:
• Độ chính xác đơn, được gọi bằng tên là "float" trong họ ngôn ngữ lập trình C và tên
là "real" hay "real*4" trong ngôn ngữ Fortran. Đây là định dạng nhị phân chiếm 32 bit
(4 byte) và phần định trị của nó có độ chính xác 24 bit (tương đương với khoảng 7
chữ số thập phân).
• Độ chính xác kép, được gọi bằng tên là "double" trong họ ngôn ngữ lập trình C và tên
là "double precision" hay "real*8" trong ngôn ngữ Fortran. Đây là định dạng nhị phân
chiếm 64 bit (8 byte) và phần định trị của nó có độ chính xác 53 bit (tương đương với
khoảng 16 chữ số thập phân).
Các định dạng khác là nhị phân với độ chính xác bậc bốn (128 bit), cũng như là dấu
phẩy động thập phân (64 bit) và dấu phẩy động thập phân "kép" (128 bit).
Các định dạng ít thông dụng hơn :
• Định dạng độ chính xác mở rộng, mỗi số chiếm 80 bit.
• Định dạng bán chính xác cũng gọi là dấu phẩy động 16, mỗi số chiếm 16 bit.
150
KTMT-CRDT
Biểu diễn số dấu chấm động
151
KTMT-CRDT
3 trường trong chuẩn IEEE (64 bit)
152
Mô tả Số 0.15625
KTMT-CRDT
Ví dụ
Ta có số –2345,125 trong hệ thập phân. Hãy biểu diễn
chúng dưới dạng chuẩn IEEE 32bit trong máy tính
KTMT-CRDT
VD
154
KTMT-CRDT
VD
155
KTMT-CRDT
156
KTMT-CRDT
VD
1. Biểu diễn số thực X=16,30859375 về
dạng số dấu chấm động theo chuẩn
IEEE754 dạng 32 bit.
157
KTMT-CRDT
16 chuyển sang hệ nhị phân 10000
X=10000.01001111=1.000001001111 x 24
S=0
e= 127+4=131 theo cơ số 2 là 1000 0011
m=0000010011110000000…..
X= 0 10000011 0000010011110000…
0,30859375 0,6171875 0
1,234375 1
0,46875 0
0,9375 0
1,875 1
1,75 1
1,5 1
1 1
>> 0.01001111
158
KTMT-CRDT
Biểu diễn số thực X= - 10,35546875
về dạng số dấu chấm động theo
chuẩn IEEE754 dạng 32 bit.
159
KTMT-CRDT
>>> -0,01011111
10>> Hệ nhị phân 1010
S=1 vì là số âm e= 130 = 1000 0010
m = 01001011111000 ….
X= - 1010.01011111= - 1.01001011111
x23
160
KTMT-CRDT
Cộng hoặc trừ hai số dấu chấm
động tuân theo các bước sau
Tăng số mũ của số có số mũ nhỏ hơn cho bằng số có số mũ lớn
hơn.
Cộng (hoặc trừ) các phần định trị.
Nếu cần thiết chuẩn hoá kết quả trả lại.
X1*X2 = (M1*M2)*RE1+E2
X1/ X2 = (M1 / M2)*RE1-E2
X1±X2=(M1*R(E1-E2) ±M2)*RE2 (với giả thiết E1>E2)
161
KTMT-CRDT
Biểu diễn số dấu chấm động
162
KTMT-CRDT
Tràn số
Tràn trên (Exponent Overflow): mũ dương tràn khỏi cực đại có thể.
Tràn dưới số mũ (Exponent Underflow): mũ âm tràn khỏi cực đại có
thể.
Tràn trên phần định trị (Mantissa Overflow): cộng hai phân định trị
có cùng dấu, kêt qủa tràn ra ngoài bit cao nhất.
Tràn dưới phần định trị (Mantissa Underflow): Khi hiệu chỉnh định
trị, các sô bị mất bên phải phần định trị.
163
KTMT-CRDT
Biểu diễn ký tự
Tuỳ theo các hệ thống khác nhau, có thể sử dụng các bảng
mã khác nhau
164
KTMT-CRDT
Mã ASCII
165
KTMT-CRDT
166
KTMT-CRDT
Bộ mã hợp nhất Unicode
Do các hãng máy tính hàng đầu thế giới kết hợp thiết kế.
Bộ mã 16 bit có thể xây dựng bộ mã toàn cầu 216 ký tự
với 128 ký tự đầu có mã trùng mã trong bảng mã ASCII.
Có hỗ trợ các ký tự Tiếng Việt
167
KTMT-CRDT
Bộ mã hợp nhất Unicode
168
KTMT-CRDT
Mã Hexa tương ứng
169
KTMT-CRDT
https://www.tinhte.vn/threads/vi-xu-li-64-
bit-la-gi-va-no-giup-ich-nhu-the-nao-cho-
cac-thiet-bi-dien-toan.2173158/
170
KTMT-CRDT