TRƯỜNG ĐẠI HỌC B\CH KHOA H[ NỘI VIỆN CÔNG NGHỆ THÔNG TIN V[ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG 2 Copyright by SOICT Nội dung 1.1.. Biểu diễn dữ liệu trong m|y tính 3 Copyright by SOICT
Trang 1TRƯỜNG ĐẠI HỌC B\CH KHOA H[ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN V[ TRUYỀN THÔNG
TIN HỌC ĐẠI CƯƠNG
2 Copyright by SOICT
Nội dung
1.1 Thông tin v{ Tin học
1.1.1 Thông tin v{ xử lý thông tin
1.1.2 M|y tính điện tử (MTĐT) v{ ph}n loại
1.1.3 Tin học v{ c|c ng{nh liên quan
1.2 Biểu diễn số trong hệ đếm
1.3 Biểu diễn dữ liệu trong m|y tính
3 Copyright by SOICT
Nội dung
1.1 Thông tin v{ Tin học 1.1.1 Thông tin v{ xử lý thông tin 1.1.2 M|y tính điện tử (MTĐT) v{ ph}n loại 1.1.3 Tin học v{ c|c ng{nh liên quan
1.2 Biểu diễn số trong hệ đếm 1.3 Biểu diễn dữ liệu trong m|y tính
4 Copyright by SOICT
Trang 2a Thông tin (Information)
c Xử lý dữ liệu (Data processing)
• Thông tin nằm trong dữ liệu Càn phải xử lý dữ lie ̣u đẻ
thu được thông tin càn thiét, hữu ích phục vụ cho con
XUẤT (OUTPUT)
Sử dụng máy tính điện tử để hỗ trợ cho việc lưu trữ, chọn lọc
và xử lý dữ lie ̣u
8
c Xử lý dữ liệu (2)
Trang 3Nội dung
1.1 Thông tin v{ Tin học
1.1.1 Thông tin v{ xử lý thông tin
1.1.2 M|y tính điện tử (MTĐT) v{ ph}n loại
1.1.3 Tin học v{ c|c ng{nh liên quan
1.2 Biểu diễn số trong hệ đếm
1.3 Biểu diễn dữ liệu trong m|y tính
9 Copyright by SOICT
1.1.2 Máy tính điện tử
• Máy tính đie ̣n tử
(Computer): L{ thiết bị điện tử có khả năng xử lý
dữ liệu theo chương trình định sẵn
10
• Trong m|y tính mọi thông tin đều được biểu diễn bằng số nhị ph}n
• Theo khả năng sử dụng chung:
– Máy tính lớn (Mainframe) v{ Siêu máy tính (Super Computer)
– M|y tính tầm trung (Mini Computer) – Máy vi tính ( Micro Computer)
12
Copyright by SOICT
Trang 4i Máy tính lớn/Siêu máy tính
• Phức tạp, có tóc đo ̣ rát nhanh
• Sử dụng trong c|c công ty lớn/vie ̣n nghiên cứu
• Giải quyết c|c công việc lớn, phức tạp
• Rất đắt (h{ng trăm ng{n ~ h{ng triệu USD)
• Nhièu người dùng đòng thời (100 – 500)
13
Copyright by SOICT
S u p e r
C o m p u t e
r
ii Máy tính tầm trung (Mini computer)
• Cũng giống như c|c m|y Mainframe
• Sự kh|c biệt chính:
– Hỗ trợ ít người dùng hơn (10 – 100)
– Nhỏ hơn v{ rẻ hơn (v{i chục nghìn USD)
15 Copyright by SOICT
iii Máy vi tính (Micro computer)
• Sử dụng bộ vi xử lý
• Nhỏ, rẻ, hiệu năng cao,…
• Phù hợp cho nhiều đối tượng người dùng, sử dụng nhiều trong công nghiệp v{ giải trí:
– Máy tính cá nhân – Personal Computer (PC) – M|y tính “nhúng” – Embedded Computer – Các thiét bị càm tay như đie ̣n thoại di do ̣ng, máy tính bỏ túi –
16 Copyright by SOICT
Trang 5Máy tính cá nhân (Personal Computer – PC)
• M|y tính để b{n – Desktop Computer
• Máy tính di đo ̣ng – Portable Computer
– Máy tính xách tay (Laptop Computer)
– M|y tính bỏ túi (PDA - Personal Digital Assistant)
• Máy tính bảng – Tablet Computer
Máy tính nhúng (Embedded computer)
• Là máy tính chuyên dụng (special-purpose computer)
• Gắn trong c|c thiết bị gia dụng, m|y công nghiệp
• Giúp con người dùng sử dụng thiết bị hiệu quả hơn
18
Copyright by SOICT
Lịch sử phát triển của máy tính
• Sự ph|t triển về công nghệ Sự ph|t triển
• Điều khiển bằng tay, kích thước rất lớn 20
Bóng đèn ch}n không (vacumm tube)
Copyright by SOICT
Trang 6ENIAC
• Máy tính đie ̣n tử đầu tiên (1946) với công nghệ bóng chân
không:
– Decimal (not binary)
– 18,000 vacuum tubes, 30 tons, 15,000 square feet
• Là máy tính thương mại đầu tiên
• Thực hiện 30000 phép toán / 1 giây
22
UNIVAC I UNIVersal Automatic Computer
Trang 7•Thiết kế trên công nghệ mạch tích hợp (IC)
•Tốc độ tính toán cao (cỡ MIPS)
Copyright by SOICT
Trang 8iv Thế hệ thứ tư (1974 – nay)
mở IBM
Copyright by SOICT
Trang 9• CPU đa lõi
• Kiến trúc ít thay đổi
bàn Pocket
Trang 10• Artificial Intelligence (AI)
• Công nghệ vi điện tử với tốc độ tính to|n cao v{ xử
lý song song
• Mô phỏng c|c hoạt động của n~o bộ v{ h{nh vi con người
• Có trí khôn nh}n tạo với khả năng tự suy diễn ph|t triển c|c tình huống nhận được
Trang 11Xu hướng ngày nay
• Nhanh hơn
• Nhỏ hơn
• Rẻ hơn
• Dễ sử dụng hơn
41 Copyright by SOICT
Nội dung
1.1 Thông tin v{ Tin học 1.1.1 Thông tin v{ xử lý thông tin 1.1.2 M|y tính điện tử (MTĐT) v{ ph}n loại 1.1.3 Tin học v{ c|c ng{nh liên quan
1.2 Biểu diễn số trong hệ đếm 1.3 Biểu diễn dữ liệu trong m|y tính
42 Copyright by SOICT
1.1.3 Tin học và các ngành liên quan
• Tin học (Computer Science/Informatics)
• Công nghệ thông tin (Information Technology - IT)
• Công nghệ thông tin v{ truyền thông (Information
and Communication Technology – ICT)
• 1957, Karl Steinbuch người Đức đề xướng
trong 1 b{i b|o có thuật ngữ "Informatik "
• 1962, Philippe Dreyfus người Ph|p gọi l{
“informatique "
• Phần lớn c|c nước T}y ]u, trừ Anh đều chấp nhận Ở Anh người ta sử dụng thuật ngữ
‘computer science’, hay ‘computing science’,
• 1966, Nga cũng sử dụng tên informatika
44
a Tin học (Informatics)
Copyright by SOICT
Trang 12a Tin học (2)
• Tin học được xem l{ ng{nh khoa học nghiên
cứu c|c phương ph|p, công nghệ v{ kỹ thuật xử
lý thông tin một c|ch tự động
• Công cụ chủ yếu sử dụng trong tin học l{ m|y
tính điện tử v{ một số thiết bị truyền tin kh|c
• Nội dung nghiên cứu của tin học chủ yếu gồm 2
phần:
– Kỹ thuật phần cứng (Hardware engineering)
– Kỹ thuật phần mềm (Software engineering)
45 Copyright by SOICT
• Information Technology (IT)
• Xuất hiện ở Việt nam v{o những năm 90 của thế kỷ 20
• CNTT xử lý với các máy tính điện tử và các phần
mềm máy tính nhằm chuyển đổi, lưu trữ, bảo vệ, truyền tin và trích rút thông tin một cách an toàn
46
b Công nghệ thông tin
Copyright by SOICT
• Mo ̣t ngành sử dụng he ̣ thóng các thiét bị và máy
tính, bao gòm phàn cứng và phàn mèm đẻ cung
cáp mo ̣t giải pháp xử lý thông tin cho các cá nhân,
tỏ chức có yêu càu
• Có ảnh hưởng và được ứng dụng trong nhièu
ngành nghè khác nhau của xã ho ̣i
• C|c ứng dụng ng{y nay của IT:
• Information and Communication Technology
– Truyền thông m|y tính l{ sự kết nối một số lượng m|y tính với nhau
• L{ thuật ngữ mới, nhấn mạnh sự không thể t|ch rời hiện nay của CNTT với công nghệ truyền thông trong thời đại “tất cả đều nối mạng”
• Internet - Mạng máy tính toàn cầu
48
c Công nghệ thông tin và truyền thông (ICT)
Copyright by SOICT
Trang 13Nội dung
1.1 Thông tin v{ Tin học
1.2 Biểu diễn số trong hệ đếm
1.2.1 Hệ đếm
1.2.2 Chuyển đổi cơ số
1.3 Biểu diễn dữ liệu trong m|y tính
49 Copyright by SOICT
Nội dung
1.1 Thông tin v{ Tin học 1.2 Biểu diễn số trong hệ đếm 1.2.1 Hệ đếm
1.2.2 Chuyển đổi cơ số 1.3 Biểu diễn dữ liệu trong m|y tính
50 Copyright by SOICT
51
• L{ tập hợp c|c ký hiệu v{ qui tắc để biểu
diễn v{ x|c định gi| trị c|c số
• Mỗi hệ đếm có một số ký tự/số (ký số) hữu
hạn Tổng số ký số của mỗi hệ đếm được gọi
là cơ số (base hay radix), ký hiệu l{ b
1.2.1 Hệ đếm (2)
Copyright by SOICT
Trang 1453
• Hệ đếm thập ph}n hay hệ đếm cơ số 10 bao
gồm 10 ký số theo ký hiệu sau:
Trang 1557
• Sử dụng 2 chữ số: 0,1 (b=2)
• Chữ số nhị ph}n gọi l{ bit (binary digit)
Ví dụ: Bit 0, bit 1
• Bit l{ đơn vị thông tin nhỏ nhất
c Hệ đếm nhị phân (Binary System)
c Hệ đếm nhị phân (4)
Copyright by SOICT
Trang 171.2.2 Chuyển đổi cơ số 1.3 Biểu diễn dữ liệu trong m|y tính
66 Copyright by SOICT
67
1.2.2 Chuyển đổi cơ số
• Trường hợp tổng qu|t, một số N trong hệ
a Chuyển đổi phần nguyên
• Bước 1:Lấy phần nguyên của N(10) chia cho b, ta được thương l{ T1 số dư d 1.
• Bước 2: Nếu T1 khác 0, Lấy T1 chia tiếp cho b, ta được thương số l{ T2 , số dư là d 2
(Cứ làm như vậy cho tới bước thứ n, khi ta được T n =0)
• Bước n: Nếu Tn-1 khác 0, lấy Tn-1 chia cho b, ta được thương số l{ Tn =0, số dư là d n
• Kết quả ta được số N(b) l{ số tạo bởi c|c số dư (được
viết theo thứ tự ngược lại) trong c|c bước trên
Phần nguyên của N(10) = dndn-1…d1 (b)
Copyright by SOICT
Trang 1869
a Chuyển đổi phần nguyên (2)
• Ví dụ: C|ch chuyển phần nguyên của số
12.6875(10) sang số trong hệ nhị ph}n:
– Dùng phép chia cho 2 liên tiếp, ta có một loạt
c|c số dư như sau
b Chuyển đổi phần thập phân
• Bước1: Lấy phần thập phân của N(10) nhân với b, ta được một số có dạng x1.y1 (x là phần nguyên, y là phần thập phân)
• Bước 2: Nếu y1 khác 0, tiếp tục lấy 0.y1 nhân với b, ta được một số có dạng x2.y2
…(cứ làm như vậy cho đến khi y n =0)
• Bước n: Nếu yn-1 khác 0, nhân 0.yn-1 với b, ta được xn.0
• Kết quả ta được số sau khi chuyển đổi l{:
Trang 19Cách 2: Tính nhẩm
• 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
• Hexa Nhị ph}n: AB7(16) = ? – AB7(16) = 1010 1011 0111(2)
• Hexa Thập ph}n: 3A8C ? 3A8C (16) = 3 x 16 3 + 10 x 16 2 + 8 x 16 1 +12 x 16 0
= 12288 + 2560 + 128 + 12 = 14988(10)
– 65.125
76 Copyright by SOICT
Trang 20Nội dung
1.1 Thông tin v{ Tin học
1.2 Biểu diễn số trong hệ đếm
1.3 Biểu diễn dữ liệu trong m|y tính
Nội dung
1.1 Thông tin v{ Tin học 1.2 Biểu diễn số trong hệ đếm 1.3 Biểu diễn dữ liệu trong m|y tính 1.3.1 Nguyên lý chung
1.3.2 Biểu diễn số nguyên 1.3.3 Biểu diễn số thực 1.3.4 Biểu diễn ký tự
78 Copyright by SOICT
79
1.3.1 Nguyên lý chung
• Mọi dữ liệu khi đưa vào máy tính đều phải
được mã hóa thành số nhị phân
• Các loại dữ liệu:
– Dữ liệu nhân tạo: Do con người quy ước
– Dữ liệu tự nhiên:
• Tồn tại khách quan với con người
• Phổ biến là các tín hiệu vật lý như âm thanh, hình
ảnh,…
a Nguyên tắc mã hóa dữ liệu
• Mã hóa dữ liệu nhân tạo:
– Dữ liệu số: Mã hóa theo các chuẩn quy ước – Dữ liệu ký tự: Mã hóa theo bộ mã ký tự
• Mã hóa dữ liệu tự nhiên:
– Các dữ liệu cần phải số hóa trước khi đưa vào máy tính
– Theo sơ đồ mã hóa và tái tạo tín hiệu vật lý
Copyright by SOICT
Trang 2181
Sơ đồ mã hóa và tái tạo tín hiệu vật lý
• Ví dụ: MODEM: MOdulator and DEModulator
(Điều chế và Giải điều chế) Copyright by SOICT 82
b Các dạng dữ liệu trong máy tính
• Dạng cơ bản
– Số nguyên: Mã nhị phân thông thường (không dấu) và mã bù hai (có dấu)
– Số thực: Số dấu chấm động – Ký tự: Bộ mã ký tự
• Đơn vị nhỏ nhất để biểu diễn thông tin l{
BIT (Binary DigIT)
• C|c đơn vị biểu diễn lớn hơn
Tên gọi Ký hiệu Giá trị
Nội dung
1.1 Thông tin v{ Tin học 1.2 Biểu diễn số trong hệ đếm 1.3 Biểu diễn dữ liệu trong m|y tính 1.3.1 Nguyên lý chung
1.3.2 Biểu diễn số nguyên 1.3.3 Biểu diễn số thực 1.3.4 Biểu diễn ký tự
84 Copyright by SOICT
Trang 2285
1.3.2 Biểu diễn số nguyên
• Dùng 1 chuỗi bit để biểu diễn
• 2 trường hợp:
– Số nguyên không dấu
– Số nguyên có dấu
a Số nguyên không dấu
• Dạng tổng qu|t: giả sử dùng n bit để biểu diễn cho một số nguyên không dấu A:
an-1an-2 a3a2a1a0
• Gi| trị của A được tính như sau:
• Dải biểu diễn của A: [0, 2n-1]
Trang 2389
Trường hợp cụ thể: với n = 8 bit
• Dải biểu diễn l{ [0, 255]
255 254
• Ví dụ
– Xét n = 4 bit, A = 0110 – Số bù một của A = (2 4 - 1) - 0110 = 1001 – Số bù hai của A = 2 4 - 0110 = 1010
92 Copyright by SOICT
Trang 24A + Số bù hai của A = 0 nếu bỏ qua bit nhớ
ra khỏi bit cao nhất
Bù 2: 1011 1010 Vậy: A = 1011 1010(2)
Copyright by SOICT
95
• Dạng tổng qu|t của số nguyên có dấu A:
A = an-1an-2 a2a1a0
• Gi| trị của A được x|c định như sau:
• Dải biểu diễn: [-2 n-1 , 2 n-1 -1]
A = 2 6 + 2 4 + 2 2 + 2 1 = 64 + 16 + 4 + 2 = +86
B = -2 7 + 2 6 + 2 4 + 2 1 = = -128 + 64 + 16 + 2 = -46
Copyright by SOICT
Trang 25Trường hợp cụ thể: với n = 8 bit
• Dải biểu diễn l{ [-128, 127]
c Tính toán số học với số nguyên
• Phép cộng/trừ số nguyên (không dấu/có dấu)
• Ph}n nh}n, phép chia số nguyên
98 Copyright by SOICT
1101
1101
- 111 -
110
c Tính toán số học với số nguyên (2)
• Cộng/ trừ số nguyên không dấu:
– Tiến h{nh cộng/trừ lần lượt từng bít từ phải qua trái
– Khi cộng/trừ hai số nguyên không dấu n bit ta thu được một số nguyên không dấu n bit
• Nếu tổng của hai số đó lớn hơn 2 n-1 thì khi đó sẽ tr{n
số v{ kết quả sẽ l{ sai
• Trừ số không dấu thì ta chỉ trừ được số lớn cho số nhỏ Trường hợp ngược lại sẽ sai
Copyright by SOICT
Trang 26101
Ví dụ: Cộng trừ số nguyên không dấu
• Dùng 8 bit để biểu diễn số nguyên không
– (KQ sai = 23 + 21 + 20 = 11) Copyright by SOICT 102
c Tính toán số học với số nguyên (3)
• Cộng số nguyên có dấu
• Cộng lần lượt c|c cặp bit từ phải qua tr|i,
bỏ qua bit nhớ (nếu có)
• Cộng hai số kh|c dấu: kết quả luôn đúng
• Cộng hai số cùng dấu:
• Nếu tổng nhận được cùng dấu với 2 số hạng thì kết quả l{ đúng
• Nếu tổng nhận được kh|c dấu với 2 số hạng
thì đ~ xảy ra hiện tượng tràn số học
(overflow) v{ kết quả nhận được l{ sai
Trang 27c Tính toán số học với số nguyên (4)
• Trừ số nguyên có dấu
– Để trừ hai số nguyên có dấu X v{ Y, cần lấy bù
hai của Y tức –Y, sau đó cộng X với –Y tức l{: X –
Y = X + (-Y)
– Cộng lần lượt c|c cặp bit từ phải qua tr|i, bỏ qua
bit nhớ (nếu có)
– Ví dụ:
105
c Tính toán số học với số nguyên (4)
• Nh}n/chia số nguyên không dấu
– C|c bước thực hiện như trong hệ 10 – VD: Phép nhân
1011 (11 cơ số 10)
x
1101 (13 cơ số 10)
-
1011
0000
1011
1011
-
10001111 (143 cơ số 10)
Nhận xét
Copyright by SOICT
c Tính toán số học với số nguyên (5)
• Phép chia số nguyên không dấu
107
Copyright by SOICT
c Tính toán số học với số nguyên (6)
• Nhân/chia số nguyên có dấu:
– Bước 1: Chuyển đổi th{nh số dương tương ứng – Bước 2: Thực hiện nh}n/chia với số nguyên – Bước 3: Hiệu chỉnh dấu của kết quả
108 Copyright by SOICT
Trang 28Nội dung
1.1 Thông tin v{ Tin học
1.2 Biểu diễn số trong hệ đếm
1.3 Biểu diễn dữ liệu trong m|y tính
• Một số thực X được biểu diễn theo kiểu số
dấu chấm động như sau:
– M1 = -15 và E1 = +12 – M2 = +314 và E2 = -9 – Có nghĩa l{
N1 = M1 x 10 E1 = -15x10 12 = -15 000 000 000 000
và N2 = M2 x 10 E2 = 314 x 10 -9
= 0.000 000 314
Copyright by SOICT
Trang 29113
b Phép toán với số thực
• Khi thực hiện phép to|n với số dấu chấm
động sẽ được tiến h{nh trên cơ sở c|c gi| trị
– N1 x N2 = (M1x M2) x R E1+E2 – N1 /N2 = (M1 / M2) x R E1-E2
Trang 300 011 1111 1000 0000 0000 0000 0000 0000
• Giải:
– S = 0 X l{ số dương – e = 0111 1111= 127 – m = 000000 00 – Vậy X = (-1) 0 x 1.00 00 00 x 2 127-127 = 1.0 x 2 0 = 1
Copyright by SOICT
Trang 31121
Ví dụ 3
• Biểu diễn số thực X = 9.6875 về dạng số dấu chấm
động theo chuẩn IEEE 754 dạng 32 bit
Các quy ước đặc biệt
• Nếu tất cả c|c bit của e đều bằng 0, các bit của m đều bằng 0, thì X = 0
• Nếu tất cả c|c bit của e đều bằng 1, các bit của m đều bằng 0, thì X =
• Nếu tất cả c|c bit của e đều bằng 1, m có ít nhất một bit bằng 1, thì X không phải l{ số (not a number - NaN)
1.3.2 Biểu diễn số nguyên 1.3.3 Biểu diễn số thực 1.3.4 Biểu diễn ký tự
124 Copyright by SOICT
Trang 32125
a Nguyên tắc chung
• C|c ký tự cũng cần được chuyển đổi th{nh
chuỗi bit nhị ph}n gọi l{ mã ký tự
• Số bit dùng cho mỗi ký tự theo c|c m~ kh|c
• ASCII l{ bộ m~ được dùng để trao đổi thông
tin chuẩn của Mỹ Lúc đầu chỉ dùng 7 bit
(128 ký tự) sau đó mở rộng cho 8 bit và có thể biểu diễn 256 ký tự kh|c nhau trong máy tính
• Bộ m~ 8 bit m~ hóa được cho 28 = 256 kí
tự, có m~ từ 00(16) FF(16), bao gồm:
– 128 kí tự chuẩn có m~ từ 00 (16) 7F(16) – 128 kí tự mở rộng có m~ từ 80(16) FF(16)
Copyright by SOICT
127
i Ký tự chuẩn – Bộ mã ASCII
• 95 kí tự hiển thị được: Có m~ từ 20(16) ÷ 7E(16)
– 26 chữ c|i hoa Latin 'A' ÷ 'Z' có m~ từ 41(16) ÷ 5A(16)
– 26 chữ c|i thường Latin 'a' ÷ 'z' có m~ từ 61(16) ÷ 7A(16)
để m~ hóa cho c|c chức năng điều khiển