Nhập môn tin học - Nguyễn Thị Thảo

Là một tập hợp của các dấu hiệu, đặc điểm,tính chất cho ta hiểu biết về một đối tượng. Thông tin có thể tồn tại ởnhiều dạng khác nhau:âm thanh,hình ảnh,ký tự Thông tin có thể được mã hóalàm cho thông tin ngắn gọn, cô đọng, bảo mật

pdf53 trang | Chia sẻ: lylyngoc | Lượt xem: 1652 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Nhập môn tin học - Nguyễn Thị Thảo, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1NHẬP MÔN TIN HỌC GV: Nguyễn Thị Thảo BM: Khoa học máy tính – Khoa CNTT Trường Đại học Nông Nghiệp Hà Nội 2Tổng quan môn học  Các nội dung chính  Cơ sở  Microsoft Word  Microsoft Excel  Hệ số điểm Chuyên cần: 0.1 Trung bình các bài kiểm tra: 0.3  Cơ sở: kiểm tra giữa kỳ  Microsoft Word: kiểm tra giữa kỳ  Microsoft Excel: 0.6 (thi cuối kỳ) 3Tổng quan môn học (tiếp) Tài liệu môn học Giáo trình “NHẬP MÔN TIN HỌC” (Dùng cho sinh viên Nông nghiệp khối B) Tác giả: ThS. Đỗ Thị Mơ – TS. Dương Xuân Thành 4Phần I: ĐẠI CƯƠNG VỀ TIN HỌC 1. Thông tin và tin học 1.1 Thông tin 1.2 Tin học 1.3 Đơn vị của thông tin trong tin học 1.4 Mã hóa thông tin trong tin học 2. Các hệ đếm trong máy tính 2.1 Các hệ đếm 2.2 Chuyển số hệ 10 sang hệ 2, hệ 16 2.3 Chuyển số hệ 2, hệ 16 sang hệ 10 2.4 Chuyển đổi giữa hệ 2 và hệ 16 2.5 Các phép toán trọng hệ 2 2.6 Biểu diễn số nguyên trong máy tính 3. Đại số logic 51. Thông tin và tin học 61.1 Thông tin Là một tập hợp của các dấu hiệu, đặc điểm, tính chất … cho ta hiểu biết về một đối tượng. Thông tin có thể tồn tại ở nhiều dạng khác nhau: âm thanh, hình ảnh, ký tự … Thông tin có thể được mã hóa  làm cho thông tin ngắn gọn, cô đọng, bảo mật … 71.2 Tin học  Sự hình thành thuật ngữ tin học Năm 1962, một người Pháp có tên Phillipe Dreufus đã dùng đầu tiên để định nghĩa cho một môn khoa học mới trong lĩnh vực xử lý thông tin. Năm 1966, Viện hàn lâm khoa học Pháp đã đưa ra định nghĩa: “Tin học là môn khoa học về xử lý hợp lý các thông tin, đặc biệt bằng các thiết bị tự động, các thông tin đó chứa đựng kiến thức của loài người trong các lĩnh vực kỹ thuật, kinh tế và xã hội” Tin học là một môn học nghiên cứu việc tự động hóa quá trình xử lý thông tin. 81.2 Tin học (tiếp) Ngày nay tin học được chia thành hai lĩnh vực Phần cứng: Thiết kế, lắp đặt, bảo trì các thiết bị tự động để xử lý thông tin. Phần mềm: xây dựng các thuật toán, các chương trình máy tính để xử lý thông tin Phần cứng và phần mềm có quan hệ mật thiết với nhau Nếu có phần mềm mà không có phần cứng thì chương trình không thể hoạt động được và ngược lại. 91.3 Đơn vị của thông tin trong tin học  BIT (BInary digiT) BIT là đơn vị nhỏ nhất của thông tin, biểu thị một phần tử nhớ của máy tính. Các thiết bị máy tính đều được xây dựng từ các linh kiện điện tử chỉ có hai trạng thái khác nhau được mã hóa tương ứng với hai ký hiệu chữ số 0 và 1. Nếu trạng thái này là 0 thì trạng thái kia là 1, không có trạng thái thứ ba. Mọi thông tin đưa vào máy tính (ấn phím, bấm chuột …) đều được chuyển hóa thành các xung điện có mức điện thế cao hay thấp. Mức điện thế cao mức logic 1 Mức điện thế thấp mức logic 0 10 1.3 Đơn vị của thông tin trong tin học (tiếp) Các xung điện sẽ được máy tính ghi tương ứng vào các phần tử nhớ, mỗi phần tử này chỉ có thể thiết lập bằng 0 hoặc bằng 1. Ví dụ: Mỗi ô chỉ có thể là 0 hoặc 1 mỗi ô được gọi là 1 BIT 11 1.3 Đơn vị của thông tin trong tin học (tiếp) Byte Là một nhóm 8 bit liền nhau bắt đầu từ bit thứ 8i và kết thúc là bit thứ 8i+7 (không phải bắt đầu từ vị trí bất kỳ) Ví dụ Từ bit thứ 0 bit thứ 7: là 1 byte Từ bit thứ 8 bit thứ 15: là 1 byte Từ bit thứ 2 bit thứ 9: không phải là 1 byte 1 byte có thể lưu được một ký tự hoặc 1 số nguyên nhỏ 12 1.3 Đơn vị của thông tin trong tin học (tiếp) Các đơn vị bội của bit 1 Byte = 8 bits 1 KiloByte (KB) = 210 = 1024 bytes 1 MegaByte (MB) = 210 KB 1 GigaByte (GB) = 210 MG 1 TeraByte (TB) = 210 GB 13 1.4 Mã hóa thông tin trong tin học Trong tin học các thông tin đều được biểu diễn bằng những mệnh đề xác định, mỗi mệnh đề được cấu tạo từ các chữ cái, các chữ số, các dấu (gọi chung là ký tự). Mỗi ký tự được biểu diễn (mã hóa) bởi một số nhất định trong hệ đếm 2. Tập hợp các ký tự được mã hóa tạo thành bảng mã. Xét 2 bảng mã: ASCII và Unicode 14 1.4 Mã hóa thông tin trong tin học (tiếp)  Bảng mã ASCII Sử dụng 8 bit để mã hóa tập ký tự  mã hóa được 28 = 256 ký tự Bảng mã được chia thành hai phần 128 số mã hóa đầu tiên (0127) phần cố định • 031: Các ký tự điều khiển • 32: Khoảng trống (space) • 4857: Các số từ 0 đến 9 • 6590: Các chữ cái in hoa từ “A” đến “Z” • 97122: Các chữ cái in thường từ “a” đến “z” 128 số mã hóa sau (128256) phần này có thể thay đổi  có thế xây dựng nhiều bảng mã khác nhau  khó khăn cho người sử dụng  cần có một chuẩn chung thống nhất bảng mã Unicode. 15 1.4 Mã hóa thông tin trong tin học (tiếp) Bảng mã Unicode Dùng 16 bit để mã hóa tập các ký tự  có thể mã hóa được 216 = 65536 ký tự. Bảng mã này mã hóa cho hầu hết tập các ký của các quốc gia trong đó có Việt Nam. Trong bảng mã Unicode, 128 số đầu tiên mã hóa các ký tự giống bảng mã ASCII. Chữ A trong bảng mã ASCII: 0100 0001 Chữ A trong bảng mã Unicode: 0000 0000 0100 0001  Dùng bảng mã Unicode dung lượng lưu trữ lớn gấp đôi dùng bảng mã ASCII 16 1.4 Mã hóa thông tin trong tin học (tiếp)  Bài toán so sánh hai chuỗi ký tự Cách làm: so sánh mã (ASCII/ Unicode) của từng cặp ký tự tương ứng ở hai chuỗi theo thứ tự từ trái sang phải Nếu gặp 1 cặp ký tự có mã khác nhau thì dừng so sánh và kết luận chuỗi chứa ký tự có mã lớn hơn là chuỗi lớn hơn. Nếu mọi cặp ký tự của hai chuỗi đều có mã bằng nhau thì kết luận hai chuỗi bằng nhau. Nếu trong quá trình so sánh một chuỗi đã hết ký tự, một chuỗi vẫn còn ký tự (chuỗi ngắn hơn là phần đầu của chuỗi dài hơn) thì kết luận chuỗi dài hơn là chuỗi lớn hơn. 17 Ví dụ so sánh các chuỗi ký tự  VD1: So sánh hai chuỗi ‘abcDRC’ và ‘abcdRC’ So sánh từng cặp ký tự: ‘a’=‘a’, ‘b’=‘b’, ‘c’=‘c’, ‘D’≠’d’  dừng so sánh và kết luận chuỗi thứ hai lớn hơn vì ‘d’ >’D’  VD2: so sánh hai chuỗi ’12ed’ và ’12ed’ So sánh từng cặp ký tự: ‘1’=‘1’, ‘2’=‘2’, ‘e’=‘e’, ‘d’=‘d’, mọi cặp ký tự đều bằng nhau  kết luận hai chuỗi bằng nhau  VD3: so sánh hai chuỗi ‘htr’ và ‘htr2d34’ So sánh từng cặp ký tự: ‘h’=‘h’, ‘t’=‘t’, ‘r’=‘r’, chuỗi thứ nhất đã hết ký tự, chuỗi thứ hai vẫn còn ký tự  chuỗi thứ hai lớn hơn chuỗi thứ nhất 18 2. Các hệ đếm trong máy tính 19 2.1 Các hệ đếm Hệ đếm cơ số 10 (hệ thập phân – Decimal) Là hệ đếm dùng để đếm và tính toán trong đời sống hàng ngày. Sử dụng 10 ký hiệu chữ số 09 để biểu diễn các số Cách viết 12510 hoặc 125D dạng rút gọn Biểu diễn theo cơ số của hệ đếm: 12510 = 125D = 1×10 2 + 2×101 + 5×100 20 2.1 Các hệ đếm (tiếp) Hệ đếm cơ số 2 (hệ nhị phân – Binary) Được sử dụng để biểu diễn thông tin trong máy tính Sử dụng 2 ký hiệu chữ số 0 và 1 để biểu diễn các chữ số Cách viết 101102 hoặc 10110B dạng rút gọn Biểu diễn theo cơ số của hệ đếm 101102 = 10110B = 1×2 4 + 0×23 + 1×22 + 1×21+ 0×20  Cách đọc số khác trong hệ đếm 10 21 2.1 Các hệ đếm (tiếp) Hệ đếm cơ số 16 Dùng để ghi địa chỉ của các ô nhớ trong máy tính, địa chỉ của các cổng vào ra. Sử dụng 16 ký hiệu (09 và AF) để biểu diễn các số. Cách viết 2AF16 hoặc 2AFH  dạng rút gọn Biểu diễn theo cơ số của hệ đếm: 2AF16 = 2AFH = 2×16 2 + 10×161 + 15×160 22 2.1 Các hệ đếm (tiếp) Tổng quát Giả sử N là một số trong hệ đếm cơ số c (hệ 2, hệ 10 hoặc hệ 16) và N có n+1 chữ số (từ a0 đến an)  có thể biểu diễn N bằng một trong hai cách Dạng rút gọn: Nc = anan-1…a1a0c Dạng khai triển: Nc = an×c n + an-1×c n-1 +…+ a1×c 1 + a0×c 0 Hay: ca i n i i Nc    0 23 2.2 Chuyển số hệ 10 sang hệ 2, hệ 16 Cách làm Lấy số trong hệ đếm 10 chia nguyên cho cơ số của hệ đếm mới (2 hoặc 16) Lấy kết quả thu được tiếp tục chia nguyên cho cơ số hệ đếm mới, lặp lại bước này cho tới khi kết quả của phép chia bằng 0 Viết số trong hệ đếm mới là tập hợp số dư của các phép chia viết theo chiều ngược lại (số dư của phép chia cuối cùng viết trước, số dư của phép chia đầu tiên viết sau) 24 Ví dụ (2.2)  Chuyển 4310 sang hệ 2  4310=10 10112  Chuyển 9510 sang hệ 16  Thay số dư 15 = F  9510=5F16 (cách viết đúng)  9510=51516 (cách viết sai) Số hệ 10 Cơ số mới Thương Số dư 43 2 21 1 21 2 10 1 10 2 5 0 5 2 2 1 2 2 1 0 1 2 0 1 Số hệ 10 Cơ số mới Thương Số dư 95 16 5 15 5 16 0 5 25 2.3 Chuyển số hệ 2, hệ 16 sang hệ 10 Cách làm Viết số ở hệ đếm cơ số c (hệ 2, hệ 16) ở dạng biểu thức khai triển Nc = an×c n + an-1×c n-1 +…+ a1×c 1 + a0×c 0 Tính giá trị biểu thức 26 Ví dụ (2.3) Chuyển 1011 00102 sang hệ 10 1011 00102 =1×2 7 + 0×26 + 1×25 + 1×24 + 0×23 + 0×22 + 1×21 + 0×20 = 128 + 32 + 16 + 2 = 17810 Chuyển 10F16 sang hệ 10 10F16 = 1×16 2 + 0×161 + 15×160 (thay F=15) = 256 + 15 = 27110 27 2.4 Chuyển đổi giữa hệ 2 và hệ 16 Hệ 10 Hệ 16 Hệ 2 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 Hệ 10 Hệ 16 Hệ 2 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111 28 2.4 Chuyển đổi giữa hệ 2 và hệ 16 (Tiếp) Chuyển đổi từ hệ 16 sang hệ 2 Cách làm Đổi từng chữ số hệ 16 tương ứng thành nhóm 4 chữ số trong hệ 2 Ví dụ: chuyển C18A16 sang hệ 2 • C16 = 11002 • 116 = 00012 • 816 = 10002 • A16 = 10102 Vậy: C18A16 = 1100 0001 1000 10102 29 2.4 Chuyển đổi giữa hệ 2 và hệ 16 (Tiếp) Chuyển đổi từ hệ 2 sang hệ 16 Cách làm Chia số hệ 2 thành từng nhóm 4 bits theo chiều từ phải sang trái. Nếu nhóm cuối cùng (bên trái nhất) không đủ 4 bit thì có thể thêm 0 vào đằng trước hoặc giữ nguyên. Đổi từng nhóm 4 bits (4 chữ số hệ 2) thành một chữ số tương ứng trong hệ 16 Ví dụ: chuyển 1011 0110 1010 11102 sang hệ 16 Vậy: 1011 0110 1010 11102 = B6AE16 30 2.5 Các phép toán trong hệ 2  Phép cộng Nguyên tắc: thực hiện tương tự như trong hệ 10, cộng từng cặp chữ số theo thứ tự từ phải sang trái. Nếu có số nhớ thì cộng số nhớ với cặp ngay bên trái Thực hiện phép cộng dựa vào bảng cộng sau Bảng cộng 2 bit A B Sum Carry 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 31 2.5 Các phép toán trong hệ 2 (tiếp) Bảng cộng 3 bit A B C Sum Carry 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 32 2.5 Các phép toán trong hệ 2 (tiếp) Phép trừ Nguyên tắc: A - B = A + (-B)  Muốn thực hiện được phép trừ, ta đi tìm biểu diễn của số (-B) trong hệ đếm 2 33 2.6 Biểu diễn số nguyên trong máy tính Máy tính có thể dùng 8 bits, 16 bits hoặc 32 bits (1 byte, 2 byte hoặc 4 byte) để biểu diễn một số nguyên, càng dùng nhiều bit thì biểu diễn được số nguyên càng lớn. Có 2 loại số nguyên biểu diễn trong máy tính: Số nguyên không có dấu Số nguyên có dấu 34 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Số nguyên không có dấu – 8 bits Dùng cả 8 bits để biểu diễn độ lớn Có thể biểu diễn được 28 = 256 số nguyên Dải biểu diễn: 0000 0000  1111 1111 (0 255) Có hai dạng bài tập với số nguyên không có dấu 35 2.6 Biểu diễn số nguyên trong máy tính (tiếp)  Dạng 1: Cho 1 số nguyên hệ 10, tìm biểu diễn dạng số nguyên không dấu 8 bit của số đó Cách làm Đổi số hệ 10 sang hệ 2 Thêm 0 vào trước cho đủ 8 bits (8 chữ số) nếu chưa đủ 8 bits Ví dụ: tìm biểu diễn dạng số nguyên không có dấu 8 bit của 6510 Đổi 6510 sang hệ 2: 6510 = 100 00012 Thêm 0 cho đủ 8 bit: 0100 00012  Biểu diễn dạng số nguyên không có dấu 8 bit của 6510 là 0100 00012 36 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Dạng 2: cho biểu diễn dạng số nguyên không có dấu 8 bits của một số nguyên. Tìm giá trị trong hệ 10? Cách làm: đổi số từ hệ 2 sang hệ 10 Ví dụ: cho biểu diễn dạng số nguyên không có dấu 8 bit như sau 0100 11012, tìm giá trị trong hệ 10? Đổi 0100 11012 sang hệ 10: 0100 11012 = 7710 37 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Số nguyên có dấu – 8 bits Dùng bit đầu tiên bên trái để biểu diễn dấu (bit dấu) với quy ước: Bit dấu = 0: số dương Bit dấu = 1: số âm 7 bits còn lại để biểu diễn độ lớn Biểu diễn được 256 số nguyên có dấu Dải biểu diễn: -128  127 38 2.6 Biểu diễn số nguyên trong máy tính (tiếp)  Cách tìm số bù 2 Cách 1: Tìm số bù 1 bằng cách thực hiện đảo bit (10; 01) Tìm số bù 2 bằng cách lấy số bù 1 cộng với 1 • Số ban đầu: 0100 1010 • Đảo bit: 1011 0101  số bù 1 • Số bù 1 +1: 1011 0110  số bù 2 Cách 2:  Duyệt các bit theo thứ tự từ phải sang trái, giữ nguyên bit cho tới khi gặp bit bằng 1 đầu tiên, các bit còn lại thực hiện đảo bit (10; 01)  Có 2 dạng bài tập với số nguyên có dấu 39 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Dạng 1: Cho một số hệ 10, tìm biểu diễn dạng số nguyên có dấu 8 bit. Cách làm: Nếu là số dương: Đổi số hệ 10 sang hệ 2 Thêm 0 vào trước cho đủ 8 bit (nếu chưa đủ 8 bit) Ví dụ: Tìm biểu diễn dạng số nguyên có dấu 8 bits của 4910 Đổi 4910 sang hệ 2: 4910 = 11 00012 Thêm 0 vào trước cho đủ 8 bits: 0011 00012  Biểu diễn dạng số nguyên có dấu 8 bits của 4910 là 0011 00012 40 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Nếu là số âm: Đổi giá trị tuyệt đối của số hệ 10 sang hệ 2 Thêm 0 vào trước cho đủ 8 bit (nếu chưa đủ 8 bit) Tìm số bù 2 Ví dụ: Tìm biểu diễn dạng số nguyên có dấu 8 bits của -4910 Đổi |-4910| sang hệ 2: |-4910| = 4910 = 11 00012 Thêm 0 vào trước cho đủ 8 bits: 0011 00012 Tìm số bù 2 của 0011 00012 là: 1100 11112  Biểu diễn dạng số nguyên có dấu 8 bits của -4910 là 1100 11112 41 2.6 Biểu diễn số nguyên trong máy tính (tiếp) Dạng 2: cho biểu diễn dạng số nguyên có dấu 8 bit của một số nguyên. Tìm giá trị trong hệ đếm 10. Cách làm: Xét bit dấu để xác định đó là số dương hay âm Nếu là số dương (bit dấu = 0) Nếu là số âm (bit dấu =1) i i iaN 2 6 0 10    1282 6 0 10   i i iaN 42 2.6 Biểu diễn số nguyên trong máy tính (tiếp)  VD1: cho biểu diễn dạng số nguyên có dấu 8 bits như sau 0100 11112. Tính giá trị trong hệ 10 Bit dấu = 0  là biểu diễn của số dương Giá trị: = 1×26 + 1×23 + 1×22 + 1×21 + 1×20 = 7910  VD2: cho biểu diễn dạng số nguyên có dấu 8 bits như sau 1010 11012. Tính giá trị trong hệ 10 Bit dấu = 1  là biểu diễn của số âm Giá trị: = 1×25 + 1×23 + 1×22 + 1×20 – 128 = -8310 43 BT  10->2 a. -79 b. -85 c. -25 d. -56 e. +34 44 BT  2->10 a. 1010 1100 b. 1101 1010 c. 1110 1110 d. 1100 0010 e. 0101 0100 45 3. Đại số logic 46 3.1 Mệnh đề logic  Là một câu nói, câu viết có tính chất khẳng định hoặc phủ định một sự kiện  Câu mệnh lệnh, câu cảm thán không phải là mệnh đề logic  Mỗi mệnh đề logic chỉ có thể nhận 1 trong hai giá trị logic (hằng logic) Đúng – True – T – 1 Sai – False – F – 0 (T>F)  Từ các mệnh đề logic đơn giản ta có thể xây dựng lên các mệnh đề phức tạp hơn bằng các phép liên kết: “KHÔNG”, “VÀ” “HOẶC”  Các phép “KHÔNG”, “VÀ” “HOẶC” cùng với các mệnh đề làm thành một môn đại số và gọi là đại số logic hay đại số mênh đề 47 3.2 Biến logic Là biến chỉ có thể nhận một trong hai giá trị True hoặc False VD: khi giải một bài toán ta đưa ra kết luận “m là một số âm”  đây là một biến logic có thể nhận giá trị True/ False tùy thuộc vào giá trị của m. Nếu m là số âm biến logic nhận giá trị true Nếu m là số dương biến logic nhận giá trị False 48 3.3 Hàm logic  Là hàm của các biến và các toán tử logic  Những bài toán logic được phát biểu dưới dạng các câu nói hoặc câu viết xác định các yêu cầu và các ràng buộc đối với hệ thống mà bài toán giải quyết.  Ta có thể biểu diễn sự liên kết giữa các mệnh đề bằng 1 biểu thức logic hoặc được gọi là hàm logic  Hàm logic sẽ trả về một giá trị logic X = “sv có hộ khẩu Hà Nội” Y= “ sv có điểm lớn hơn 20” F=X AND Y = “ sv có hộ khẩu Hà Nội và có điểm lớn hơn 20” 49 3.4 Các toán tử logic  NOT (phủ định)  AND (VÀ)  Phép AND chỉ đúng khi tất cả cùng đúng A NOT A T F F T A B A AND B F F F F T F T F F T T T 50 3.4 Các toán tử logic (tiếp) OR (HOẶC)  Phép OR chỉ sai khi tất cả cùng sai  XOR (HoẶC LOẠI TRỪ) A B A OR B T T T T F T F T T F F F A B A XOR B T T F T F T F T T F F F 51 3.5 biểu thức logic  Là biểu thức kết hợp các hằng logic, hàm logic, biến logic và các toán tử logic.  Kết quả của một biểu thức logic là một hằng logic (T/ F)  Cách tính giá trị biểu thức logic: Thay giá trị vào các biến nếu có Thực hiện các phép tính số học, các phép so sánh nếu có Thực hiện các toán tử logic theo thứ tự ưu tiên: NOT  AND  OR  XOR 52 A. NOT(LOAI=500)OR(LOAI <=“B”)AND(GIA<=200) 1.LOAI=“D”,GIA=500 GIAI Not F And T Or F And F T and T or F T or F = T 53  (sin2x ’AXY’) AND ((x+y)2 > 2xy)  T or not F and F  T  TEN=‘H*’ ‘Ha’ ‘Mai’  ‘Ha’=‘H*’ -> T  ‘Mai’ = ‘H*’ -> F  khác
Tài liệu liên quan