1. Trang chủ
  2. » Giáo án - Bài giảng

Kỹ thuật lập trình

49 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Kỹ Thuật Lập Trình
Thể loại Sách
Định dạng
Số trang 49
Dung lượng 2,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu về phần cứng và phần mềm của máy tính, các hệ thống số, ngôn ngữ lập trình, giải thuật và phương pháp luận lập trình, bao gồm các bước và các công việc của mỗi bước để xây dự

Trang 2

3.7 Độ phức tạp của giải thuật 225

6.1 Khai báo và khỏi tạo biến con trỏ 447

6.7 Biểu thức con trỏ và số học con trỏ 4766.8 Sự liên hệ giữa con trỏ và mảng 477

Trang 3

7.3 Tính đóng gói và che giấu dữ liệu 617

7.6 Đối tượng hằng và phương thức hàng 671

Trang 4

8.5 Tính đa hình 790

Phu luc B • • Các thuộc tính và các phương thức

Trang 5

LỜI NÓI ĐẰU

Quyển sách Kỹ thuật lập trình trình bày các kiểu lập trình: lập trình

goto (goto programming), lập trình có cấu trúc (structuredprogramming) và

lập trình hướng đối tượng (object-orientedprogramming).

Các kiểu lập trình và các chương trinh máy tính trong quyển sách này được minh họa bàng ngôn ngữ lập trình C++ và c#.

Quyển sách này bao gồm 8 chương và 4 phụ lục

Chương 1 Mảy tính - Phương pháp luận lập trình Giới thiệu về phần

cứng và phần mềm của máy tính, các hệ thống số, ngôn ngữ lập trình, giải thuật và phương pháp luận lập trình, bao gồm các bước và các công việc của mỗi bước để xây dựng các phần mềm

Chương 2 Các thành phần căn bản của chương trình Trình bày cấu trúc

của một chương trình, các thành phần được sử dụng trong một chương trình: kiểu dữ liệu và chuyển đổi kiểu, hằng, biển, toán tử, biểu thức, phát biểu

Chương 3 cẩu trúc điều khiển Trình bày các cấu trúc điều khiển của

chương trình bao gồm cẩu trúc tuần tự, cấu trúc điều kiện và cấu trúc lặp, tầm vực của biến, độ phức tạp của giải thuật Phần cuối của chương này giới thiệu

kiểu lập trình goto, trình bày các nguyên tắc của kiểu lập trình có cấu trúc Chương 4 Chuỗi kỷ tự - Mảng - Bản ghi Trình bày các cấu trúc dữ liệu

thường dùng bao gồm chuỗi ký tự, mảng, bản ghi và các tác vụ của các cấu trúc này, các giải thuật sắp thứ tự và tìm kiếm Phần cuối của chương này trình bày một vấn đề tương đối phức tạp được giải quyết bằng cách sử dụng lập trình có cấu trúc và các cấu trúc dữ liệu

Chương 5 Hàm - Đệ quy Trình bày định nghĩa chương trình con, tầm vực

của danh hiệu, gọi chương trình con, các cách truyền tham số và trả kết quả, tính kết nối và tính kết dính của chương trình con, các loại đệ quy

Chương 6 Con trỏ Trình bày con trỏ và tham khảo (tham chiếu), truyền và

trả về bằng con trỏ, biểu thức và số học con trỏ, con trỏ hàm, cấp phát và

giải phóng vùng nhớ Phần cuối của chương này giới thiệu các cấu trúc dữ

liệu động sử dụng con trỏ gồm có danh sách liên kết, chồng, hàng đợi và cây

theo kiểu lập trình có cẩu trúc.

Chương 7 cấu trúc - Lớp - Tính đóng gói Trình bày cấu trúc, lớp và đối

tượng, tính đóng gói và che giấu dữ liệu, mối liên kết has-a, hoạt tải (tải bội)

Trang 6

toán tử Phần cuối của chương này giới thiệu các cẩu trúc dữ liệu động gồm có danh sách liên kết, chồng, hàng đợi và cây theo kiểu lập trình hướng đối tượng.

Chương 8 Tính thừa kế - Tỉnh đa hình Trình bày lóp cơ sở và lớp dẫn

xuất, tính thừa kế của các lớp (mối liên kết is-a), tính đa hình (đa xạ) của

các lớp

Phụ lục A Các hàm x ử lý chuỗi kỷ tự của C++.

Phụ ỉục B Các thuộc tính và phương thức x ử lý chuỗi kỷ tự của cu Phụ lục c Các hàm toán học của C++.

Phụ lục D Các phương thức toán học của cu.

Quyển sách Kỹ thuật lập trình là tài liệu học tập cho sinh viên chuyên ngành Công nghệ Thông tin, Khoa học Mảy tính, Kỹ thuật Máy tỉnh, Công

nghệ Phần mềm của hệ đào tạo chính quy bậc đại học Quyển sách này trình

bày nhiều nội dung chi tiết, nhiều ví dụ dễ hiểu và nhiều bài tập của mỗi chương, là tài liệu tham khảo cho sinh viên thuộc hệ đào tạo từ xa bậc đại

học và bậc cao đẳng ngành Công nghệ Thông tin và lập trình viên Tại

Trường Đại học Bách khoa - Đại học Quốc gia TP HCM, quyển sách này là

tài liệu học tập cho sinh viên chuyên ngành của hệ đào tạo chính quy và hệ đào tạo từ xa qua mạng

Tác giả trân trọng cảm ơn Ban chủ nhiệm và các giảng viên của Khoa

Khoa học và Kỹ thuật Mảy tính, Ban Giáo trình của Trường Đại học Bách Khoa - Đại học Ọuổc gia TP HCM đã tạo điều kiện và giúp đỡ để quyển

sách này được xuẩt bản

Mặc dù tác giả đã nỗ lực biên soạn, tuy nhiên, quyển sách này không thể tránh khỏi những thiếu sót Tác giả rất mong nhận được những ý kiến đóng góp quý báu của độc giả và xin gừi về:

Khoa Khoa học và Kỹ thuật Máy tính, Trường Đại học Bách Khoa - Đại học Quốc gia TP Hồ Chí Minh, 268 Lý Thường Kiệt, Phường 14, Quận

lõ, TP Ho Chí Minh

Email: nttruc@hcmut.edu.vn, truc@cse.hcmut.edu.vn

Tác giảNGUYỄN TRUNG T R ựC

Trang 8

10 Chương I Máy tinh Phương pháp luận lập trình

Cuối cùng, chương này trinh bày phương pháp luận lập trình bao gồm các bước và các công việc cùa mồi bước để xây dựng các phẩn mềm máy tính

1.1 M áy tính

Máy tỉnh (computer) là một thiết bị có mục đích chung (general- purpose device) có thể được lập trình đế thực hiện các phép toán số học (arithmetic operation) và các phép toán luận lý (logical operation) một cách

Chuỗi các chỉ thị (instruction) mà máy tính thực hiện được gọi là

clnrơng trình máy tính (computer program) và được gọi tát là chương trình (program).

Người viết chương trình được gọi là người lập trình (programmer).

Các chỉ thị của chương trình được chứa trong bộ nhớ của máy tính

Chu kỳ tính toán (computation cycle) cùa máy tính bao gồm lấy chỉ thị kế

tiếp trong bộ nhớ, thực hiện tính toán và sau đỏ lấy lệnh kế tiếp và cứ như

thế cho đến khi gặp chỉ thị "halt” (dừng).

1.2 P hần cứng và phần m ềm của m áy tính

1.2.1 Phần cứng

Phần cứng (hardware) là thuật ngừ chung nói đến dụng cụ vật lý của

một công nghệ Nó cũng có nghĩa là các thành phần vật lý của một hệ thống

máy tính và được gọi là phần cứng máy tính (computer hardware).

Trang 9

Chương 1 Máy tính - Phương pháp luận lập trình

Các thiết bị phần cứng thông dụng như bàn phím (kevbocird), màn hình (screen), chuột (mouse), cần điều khiển (ịoystick), đĩa cứng (harci

disk), bộ nhớ (memory), đĩa quang (optỉcal clisk), các đơn vị xử lý (Processing unit).

Kiến trúc máy tỉnh (Computer architecturc) là một tập các quy tắc mô

tả chức năng, tô chức và sự thực hiện của hệ thống máy tính

Kiến trúc Von Neumann (Von Neumann architechture) cho thấy một

chương trình được thực hiện ở bên trong bộ nhớ của máy tính cùng với các

dừ liệu của chương trình Kiến trúc này còn được gọi là máy tính chứa

chương trình (storedprogram Computer).

Kiến trúc Von-Neumann có ba đơn vị chính:

- Bộ nhớ (inemory) chứa chương trinh và dừ liệu.

- Đơn vị x ử ¡ý trung tâm (CPU — Central Processing Unit) truy xuất

chương trinh và dữ liệu ỡ trong bộ nhớ và thực hiện các phép toán

- Đơn vị Nhập /X u ấ t (I/O unit) cung cấp các truy xuất đến các thiết bị

để nhập và xuất dữ liệu

► Output device Input device

Hình 1.1 Kiến trúc Von-Neiinmnn

Trang 10

12 Chương 1 Máy tinh — Phương pháp luận lập trình

a Các thiết bi nhập / xuất

Các thiết bị nhập / xuất {I/o device), còn được gọi là thiết bị ngoại vi

(peripheral device), được dùng để đưa dừ liệu vào máy tính và nhận dữ liệu

từ máy tính

Các thiết bị nhập / xuất gồm có bàn phím, chuột, cần điều khiển, đĩa

cứng, bộ nhớ, đĩa quang, USB {Universal Serial Bus), màn hình, .

b Đon vị xử lý trung tâm CPU

Thông thường, một máy tính phải có đơn vị xử lý trung tâm CPU và

bộ nhớ Đơn vị xử lý trung tâm CPU thực hiện các phép toán sô học và luận

lý và điều khiển các hoạt động truy xuất dừ liệu ở trong bộ nhớ

Một chu kỳ lặp {repetive cycle) của máy tính Von Neumann gồm có:

1 Nạp chỉ thị của chương trinh từ bộ nhớ đưa vào CPU.

2 Giải mã {decode) và thực hiện chì thị này Việc thực hiện chỉ thị có

thể là:

- Thực hiện phép toán số học và luận lý

- Nạp {load) hoặc lưu trữ {store) dữ liệu trong bộ nhớ.

Khi thực hiện xong một chỉ thị, CPU lấy chỉ thị kế tiếp ở trong bộ nhớ

và thực hiện chỉ thị này

CPU bao gồm hai đơn vị là đơn vị điều khiển và đơn vị tính toán số

học và luận lý

- Đon vị điều khiển {CU - Control Unit) duy trì chu kỳ không thay đổi

ỉấy-và-thực-hiện {cycle offetchs-and-execute).

- Doit vi tính toán số học vù luận lý {ALU - Arithmetic and Logic Unit) là một mạch điện tử thực hiện các phép toán số học {arithmetic operation), các phép so sánh giá trị {values comparison) và các phép

toán luận lý bit {bitwise logical operation) trên các sô nhị phân nguyên {integer binaiy number).

Cả hai đơn vị c u và ALU đều có các bộ nhớ đặc biệt, tốc độ truy xuất rất nhanh, chúng được gọi là các thanh ghi {register).

Một số thanh ghi có chức năng đặc biệt, ví dụ thanh ghi hộ (lent

chương trình {PC - Program Counter), thanh ghi chỉ thị {IR - Instruction Register).

Trang 11

Chương 1 Máy tính - Phương pháp luận lập trình 13

Thanh ghi PC chứa địa chi của chỉ thị được thực hiện kế tiếp.

Chu kỳ lẩy-và-thực-hiện gồm có hai bước sau đây:

1 Đơn vị điều khiển c ơ lấy chi thị được chứa tại địa chì mà địa chỉ này đang được chứa trong thanh ghi PC và đưa vào thanh ghi chỉ thị IR

Sau đó, đơn vị điều khiển c u tự động tăng địa chỉ trong thanh ghi PC,

nghĩa là thanh ghi PC trỏ đến chỉ thị kế tiếp trong chương trình

2 Đơn vị điều khiển c u giải mã chỉ thị ở trong thanh ghi IR và thực hiện chỉ thị này Sau khi thực hiện xong, đơn vị điều khiển cu lấy

chi thị kế tiếp mà thanh ghi PC đang trỏ đến và bắt đầu chu kỳ lẩy-

và-thực-hiện kế tiếp, cho đến khi đơn vị điều khiển cu thực hiện

- Phép cộng với so nhớ {Add with cany): cộng hai số với số nhớ và kết

quả lưu vào thanh ghi ACC và sổ nhớ là một bit trạng thái {status bit)

của phép toán

- Phép bìi-2 {Two's complement): Lấy sổ đối của một số và két quả lưu

vào thanh ghi ACC, nghĩa là số bù-2 của sổ này số bù-2 của một số

bằng số bù-1 của số này cộng với 1 Phép toán A - B là phép toán A +

Số bù-2 của B

- Phép nạp {Pass through): nạp một số vào thanh ghi ACC.

Các phép toán luận lý bit

- Phép AND: thực hiện phép toán AND trên các cặp bit của hai số và kết

quả lưu vào thanh ghi ACC.

- Phép OR:thực hiện phép toán OR trên các cặp bit của hai số và kết quả lun vào thanh ghi ACC.

- Phép Exclusive-OR {XOR):thực hiện phép toán XOR trên các cặp

bit của hai số và kết quả lưu vào thanh ghi ACC.

Trang 12

14 Chương 1 Máv tính - Phương pháp luận lập trình

- Phép bù-1 (One's complement): đảo ngược các bít (phép NOT) của

một số và kết quả lưu vào thanh ghi ACC.

Các phép dịch chuyến

- Phép dịch chuyến trái (Left shift): dịch chuyến qua trái các bit của

thanh ghi ACC với carry bit.

- Phép dịch chuyên trải vòng (Left rotate shift): dịch chuyển qua trái vòng các bit của thanh ghi ACCvới carry bít.

- Phép dịch chuyển phải (Right shift): dịch chuyến qua phải các bit của

thanh ghi ACCvới carry bit.

- Phép dịch chuyển phải vòng (Right rotate shift): dịch chuyển qua phải vòng các bit cùa thanh ghi ACC với carry bit.

- Phép dịch chuyển trái sổ học (Arithmetic left shift): dịch chuyến qua

trái số học các bit của thanh ghi ACC với carry bit.

- Phép dịch chuyến phai số học (Arithmetic right shift): dịch chuyên qua phải số học các bít của thanh ghi ACC với carry bit Bit bên trái nhất (leftmost bit) được lặp lại.

Các phép toán phức tạp

Mặc dù ALU có thể được thiết kế để thực hiện các hàm phức tạp Khi

đó, mạch điện tử của ALU sẽ phức tạp hon, tốn chi phí hơn, tốn năng lượng hơn, kích thước lớn hơn và, trong nhiều trường hợp, điều này là không khả thi

Do đó, ALU thường thực hiện các phép toán đơn giản ở tốc độ rất cao

và các mạch vi xử lý ở bên ngoài sẽ thực hiện các hàm phức tạp

Trang 13

Chương 1 Máy tinh - Phương pháp luận lập trình 15

Trang 14

Chương 1 Máv tính - Phương pháp luận lập trình

Trang 15

Chương 1 Máy tính - Phương pháp luận lập trình 17

Tính A X B

13 ACC

Trang 16

18 Chương 1 Máy tinh - Phương pháp luận lập trình

c Bộ nhớ

Bộ nhớ của máy tính bao gồm các ô nhớ (memory cell) có địa chỉ, mỗi

ô nhớ chứa nhiều bít.

Từ mảy tính (computer word) là một đơn vị cơ bản của bộ nhớ Kích

thước của một từ là số bit của từ và được gọi là chiều dài từ (word length)

Mồi lần, máy tính xứ lý một từ

Ngày nay, byte (8 bit) là đơn vị đo lường của bộ nhớ máy tính, và hầu hết các máy tính đều cung cấp khá năng định địa chỉ byte (byte addressability), nghĩa là mồi byte có địa chỉ bộ nhớ duy nhất (unique memory address).

Mặc dù máy tính có thế là máy 32-bit, mồi bvte trong một từ máy tính

A-byte (32 bit) có địa chỉ duy nhất.

Các đơn vị đo lường cua bộ nhớ là:

Kilobyte là 1024 byte, hoặc 210 bvte.

Megabyte là 1.048.576 bvte, hoặc 220 bvte.

Gigabyte là 1.037.741.824 byte, hoặc 230 byte.

Tetrabyte là 1.009.511.627.776 bvte, hoặc 240 byte.

Petabyte là 1.125.899.906.842.624 byte, hoặc 250 byte.

Bộ nhớ được dùng để lưu các chỉ thị cùa chương trình và dừ liệu

Bộ nhớ chính (main memory) của máy tính là bộ nhở truy xuất ngẫu

nhiên (RAM - Random Access Memory).

Ta có thế truy xuất trực tiếp một ô nhớ bất kỳ với cùng một tốc độ

Các hoạt động cơ bản của bộ nhớ là lưu trữ (store, write) và nạp

(retrieve, fetch, load, read) Có ít nhất hai thanh ghi ư trong mạch điêu

khiến bộ nhớ giúp cho việc luư trữ và nạp được dề dàng, đó là:

- Thanh ghi bộ nhớ địa chỉ (MAR - Memory Address Register)

- Thanh ghi bộ nhớ dữ liệu (MDR - Memory Data Register)

Ghì vào bộ nhớ

1 Trước tiên, CPU chuyển giá trị cần ghi vào thanh ghi MDRvà chuyến địa chỉ của vị trí lưu trừ vào thanh ghi MAR.

Trang 17

Chương 1 Máy tính - Phương pháp luận lập trình 19

2 ơ chu kỳ kế tiếp truy xuất bộ nhớ, giá trị trong thanh ghi MDRsẽ được chép vào vị trí có địa chi là nội dung của thanh ghi MAR.

Nạp từ bộ nhớ

1 Trước tiên, CPU lưu địa chí cần đọc vào thanh ghi MAR.

2 ơ chu kỳ kế tiếp truy xuất bộ nhớ, giá trị trong vị trí có địa chi là nội dung của thanh ghi MAR sẽ được nạp vào một trong các thanh

ghi cua CPU.

1.2.2 Phần mềm

Phần mềm máy tính (computer software), còn được gọi tắt là phần mềm (software), là tập hợp các chương trình máy tính (computer program),

còn được gọi là chương trình (program), và các dữ liệu (data) liên quan

được chứa trong bộ nhớ của máy tính

Phần mềm cung cấp các chỉ thị (instruction) cho máy tính phải làm gì

(what) và làm như thế nào (how) đe giải quyết một số vấn đề nào đó.

Phần mềm được chia thành hai loại: phần mềm hệ thống và phần mềm ứng dụng

a Phần mềm hệ thống

Phần mềm hệ thống (system software) là phần mềm chứa các lệnh

điều khiên hoạt động của phần cứng máy tính và cung cấp nền tảng

(platform) đê chạy phần mềm ứng dụng.

Các loại phần mềm hệ thống cơ bán gồm có:

- Phần mềm BIOS mảy tính (computer BIOS - Basic Input / Output

System) và phần dẻo thiết bị (device firmware) cung cấp chức năng

cơ bán đế điều khiến và vận hành các thiết bị gắn bên trong máy tỉnh

và các thiết bị kết nối với máy tính Phần dẻo (firmware) là phần mềm hệ thống được chứa trong bộ nhớ không thay đôi (non-volatile

memory) chăng hạn như mạch tích hợp (integrated circuit).

- Hệ điều hành (operating system) thực hiện những chức nãng cơ bản,

cho phép các thành phần cua máy tính làm việc chung vói nhau bàng cách thực hiện các công việc như truyền dừ liệu giữa bộ nhớ

(memory) và các đĩa từ (disk) hoặc xuất dừ liệu ra thiết bị hiến thị (display device) Hệ điều hành cung cấp nền tang đê chạy các phần

Trang 18

20 Chương 1 Máy tính - Phương pháp luận lập trình

mềm hệ thống mức cao (high-level system software) và phần mềm

ứng dụng

- Phần mềm tiện ích (utility software) giúp phân tích, cấu hình, tối ưu

hóa và bảo trì máy tính

Các công cụ phát triển phần mềm {software development tool) và

một số phần mềm tiện ích khác cũng được xem là phần mềm hệ thống Ví

dụ, chưomg trình xử lý ngôn ngừ {language processor) gồm có trình biên dịch {compiler) và trình thông dịch {interpreter), chương trình liên kết

{linker), chương trình chẩn đoán lỗi {debugger), hệ quàn trị cơ sở dữ liệu {DBMS - DataBase Management System), chương trình điều khiển thiết bị {device driver), phần mềm quét vi-rút {virus scanner).

Hệ điều hành lả một phần mềm hệ thống phức tạp và quan trọng Ví

dụ, các hệ điều hành DOS, Microsoft Windows, Mac OS, Unix, Linux, .

Hệ điều hành cung cấp việc truy xuất một cách dễ dàng đến:

- các thiết bị ngoại vi như máy in {printer), màn hình {screen),

- hệ thống các tập tin {file system) dùng để lưu trừ thông tin như dừ

liệu, các tài liệu {document) và các chương trình {program),

- giao diện người sử dụng {user interface) để dễ dàng sù dụng các

chương trình ứng dụng {application program),

- đồng hồ {timer) và lịch {calendar),

- kết nổi với Internet bằng các giao thức mạng {networkprotocol) chuẩn,

- tập các thủ tục {procedure), các hàm {function) hoặc các phương thức

{method) mà chương trình ứng dụng có thế sử dụng đế yêu cầu các

dịch vụ {service) của hệ điều hành,

- giải thụật hiệu quà để cắp phát bộ nhớ cho các chương trình đang chạy đồng thời,

- giải thuật chia sè truy xuất đến máy tính cho nhiều người sử dụng hoặc chương trình chạy đồng thời

Trang 19

Chương 1 Máy tinh - Phương pháp luận lập trình 21

Word Processing Graphics Speadsheets

Application Softwares

File Mgmt Tools Operating System Utilities

System S oftw ares

hoạt động (activity) bao gôm một hoặc nhiều công việc cụ thê có liên quan với nhau, giải quyết các vấn đề trong thực tế hay thể giới thực íreal world).

Các phần mềm ứng dụng gồm có phần mềm doanh nghiệp (enterprise

software), phần mềm ké toán (accounting software), phần mềm xử lý văn

bản (word processor), bảng tính (speadsheet), phần mềm đồ họa {graphics

software), Media Player, phần mem duyệt web {web browser), phần mềm

mô phỏng khoa học {scientific simulation),

Phần mềm ứng dụng không thể chạy được nếu không có hệ điều hành

và các tiện ích hệ thống {system utility).

Trang 20

22 Chương 1 Máy tinh - Phương pháp luận lập trình

Phần mềm ứng dụng được chia làm hai loại: ứng dụng ngang và ứng dụng dọc

- ứng dụng ngang (horizontal application) là ứng dụng rất phổ biến

và được sử dụng rộng rãi trong các phòng ban của công ty

- ửng dụng dọc (vertical application) là ứng dụng chỉ dùng cho một loại nghiệp vụ riêng biệt hoặc cho một phòng ban cụ thể cùa công ty.

Các loại phần mềm ứng dụng gồm có:

- Bộ ứng dụng {application suite) bao gồm nhiều ứng dụng được gom

chung lại với nhau Chúng thường có các chức năng liên quan với nhau và có thể tương tác với nhau, ví dụ sử dụng chung các tập tin

ứng dụng doanh nghiệp (business application) thông thường là một

bộ ứng dụng, ví dụ Microsoft Office, bao gồm các ứng dụng chạy

chung với nhau gồm có xử lý văn bản, bảng tính, .; nhưng mỗi bộ ứng dụng đều có mục đích khác nhau như bộ ứng dụng về đồ họa, về

âm nhạc

- Phần mềm doanh nghiệp {enterprise sofware) chuyên giải quyết các

nhu cầu của các quá trình tô chức và luông dừ liệu, thông thường trong môi trường phân tán rộng lớn Ví dụ hệ thông tài chính

(financial system), hệ thống quàn lý quan hệ khách hàng {CRM - Customer Relationship Management) và phân mêm quản lý dây

chuyềri cung cap {supply-chain management software).

- Phần mềm cơ sở hạ tầng doanh nghiệp {enterprise infrastructure

software) cung cấp các chức năng chung cần thiết để hỗ trợ cho các

hệ thống phần mềm doanh nghiệp, bao gồm các cơ sờ dừ liệu

{database), dịch vụ thư điện tử {email server) và các hệ thống dùng

để quản trị mạng máy tính và bảo mật {security).

- Phần mềm dùng cho người làm về thông tin {information worker software) chuyên xử lý các nhu cầu của cá nhân đế tạo và quản lý

thông tin, thông thường dùng cho các dự án riêng của một phòng

ban, gồm có quản lý thời gian {time management), quản lý tài ngpyên {resources management), các công cụ lập tài liệu

{documentation tool), phần mềm phân tích {analytical sofware) và

phần mềm cộng tác {collaborative sofware) Các phần mềm xử lý văn bản, bảng tính, hệ thống thông tin {information system) cá nhân

và chương trình soạn thảo truyền thông {media editor) cá nhân có

thể giúp ích cho nhiều công việc của người làm về thông tin

Trang 21

Chương 1 Máy tinh - Phương pháp luận lập trình 23

- Phần mềm truy cập nôi dung (content access software) là phần mềm

chủ yếu dùng để truy cập nội dung (có chỉnh sửa nội dung hoặc không), nhằm đáp ứng các nhu cầu của các cá nhân hoặc nhóm người

sử dụng để giải trí và tìm kiếm nội dung bằng kỹ thuật số, gồm có

Media Player, trình duyệt web (web browser) và các trò chơi.

- Phần mềm về giảo dục (educational software) liên quan đến phần

mềm truy cập nội dung và các đặc điểm thích hợp cho sinh viên và giảng viên để đánh giá qua các bài kiểm tra, theo dõi tiến độ thông qua tài liệu hoặc bao gồm các tính năng cộng tác

- Phần mềm mô phỏng (simulation software) là phần mềm máy tính

dùng để mô phỏng các hệ thống trừu tượng hoặc vật lý nhằm các mục đích nghiên cứu, đào tạo, giải trí

- Phần mềm phát triển phương tiện truyền thông (media development

software) chuyên giải quyết các nhu cầu của các cá nhân muốn tạo

tranh ảnh và phương tiện truyền thông điện tử (electronic media)

trong môi trường thương mại và giáo dục, gồm có các phần mềm

Graphic Art, Desktop Publishing, Multimedia Development, trinl:

soạn thảo HTML, trình soạn thảo Digital Animation, Digital Audio

and Video.

- ứng dụng di động (mobile application) chạy trên các thiết bị cầm tay

(hand-held device) ví dụ như điện thoại di động (mobile phone).

- Phần mềm kỹ thuật sản phẩnt (product engineering software) được

dùng để phát triển các sản phẩm phần cứng và phan mềm, gồm có

CAD (Computer-Aided Design), CAE (Computer-Aided Engineering),

các phần mem ngôn ngữ lập trình (dùng để viết chương trình và biên

dịch), IDE (Integrated Development Environment).

- Giao diện người sử dụng đồ họa (GUI - Graphical User Interface)

là một phần mềm cho phép chọn các lệnh từ các trình đơn (menu) khác nhau, các nút nhân (button) và các biêu tượng (icon) bằng cách

sử dụng chuột (mouse) Nó có giao diện thân thiện với người sử dụng

(user-friendly) Hệ điêu hành Microsoft Windows và Mac o s có các

giao diện người sử dụng đồ họa

Trang 22

24 Chương 1 Máy tinh - Phương pháp luận tập trình

1.3 Hệ thống số

1.3.1 Các hệ thống số

Hệ thống chữ so (numeral system, system o f numeration) là một hệ

thông văn bản (writing system) đê biêu diên các sô {number), đó là các ký

hiệu toán học {mathematical notation) biểu diễn các số của một tập hợp cụ

thể bằng cách sử dụng các ký số {digit) hoặc các ký hiệu {symbol) theo một

cách thức nhất quán

Vi dụ 1.1: Chuỗi các kỷ hiệu "11" có thể được diễn giải là số "ba" trong hệ

nhị phân, là số "mười một" trong hệ thập phân.

Ta cần phân biệt hệ thống chữ sổ khác với hệ thẳng số {number

system) ví dụ như hệ thống sổ thực {system o f real numbers), hệ thong so

phức {system o f complex numbers) Tuy nhiên, trong thực tế, người ta

thường gọi hệ thống chữ sổ là hệ thông sô Tài liệu này sử dụng thuật ngữ

hệ thống số thay cho hệ thống chữ số

Hê thống đinh vi {positional system), còn được gọi là kỷ hiệu vị fri­ gid trị {place-value notation) là một hệ thông sô dựa vào vị trí của các ký sô

cùa một số để xác định giá trị của số này

Số lượng các ký số khác nhau để tạo ra một số trong một hệ thống số

được gọi là cơ số {base) của hệ thống số này.

- Hệ nhị phân {binary numeral system, binary system) có cơ so là 2,

Trang 23

Chương 1 Máy tính - Phương pháp luận lập trình 25 Một Số number trong một hệ thống số cơ số b được ký hiệu là

number^hoặc {number) b

Giá trị của số (X4 X3 X2 Xi Xq) b được tính như sau:

Nguyên tắc chuyển đổi số Ncủa hệ thập phân thành số M cùa hệ thống

sổ cơ số b(cơ sổ 2, 8, 16) như sau:

- Đổ tính phần nguyên cùa sổ M,ta lấy phần nguyên của sổ N chia cho

cơ số btrong hệ thập phân.

- Để tính phẩn lẻ của số M,ta lấy phần !ẻ của số N nhân với cơ số b

trong hệ thập phân.

Lưu ỷ

Việc chuyển đổi một số cùa hệ thống số này thành một số của hệ thống số khác có thể không chính xác

Trang 24

26 Chương 1 Máy tínli - Phương pháp luận lập trình

Bảng 1.1 Chuyển đổi giữa Hexadecỉmal, Binary, Octal và Decitnal

Ví dụ 1.3: Chuyển đổi số 18.75 trong hệ thập phân thành các sổ trong hệ nhị

phân, hệ bát phân và hệ thập lục phân

Ngày đăng: 12/10/2022, 18:24

HÌNH ẢNH LIÊN QUAN

Hình  1.1.  Kiến trúc  Von-Neiinmnn - Kỹ thuật lập trình
nh 1.1. Kiến trúc Von-Neiinmnn (Trang 9)
Hình  1.2.  Phép cộng và các phép toán luận lý hít cua ALU - Kỹ thuật lập trình
nh 1.2. Phép cộng và các phép toán luận lý hít cua ALU (Trang 13)
Hình  l.ỉ.  Cúc phép toán sổ học và các  phép toán luận lý hít cùa ALƯ - Kỹ thuật lập trình
nh l.ỉ. Cúc phép toán sổ học và các phép toán luận lý hít cùa ALƯ (Trang 13)
Hình  1.4.  Các phép toán dịch chuyến bít cùa ALU - Kỹ thuật lập trình
nh 1.4. Các phép toán dịch chuyến bít cùa ALU (Trang 14)
Hình 1.5. Phép nhân được thực hiện bời phép dịch chỷyển vàphép cộng. - Kỹ thuật lập trình
Hình 1.5. Phép nhân được thực hiện bời phép dịch chỷyển vàphép cộng (Trang 15)
Hình 1.6. Các loại phần mềm mảy tinh - Kỹ thuật lập trình
Hình 1.6. Các loại phần mềm mảy tinh (Trang 19)
Bảng 1.1.  Chuyển đổi giữa Hexadecỉmal,  Binary,  Octal và Decitnal - Kỹ thuật lập trình
Bảng 1.1. Chuyển đổi giữa Hexadecỉmal, Binary, Octal và Decitnal (Trang 24)
Hình 1.8. Các loại ngôn ngữ lập trình - Kỹ thuật lập trình
Hình 1.8. Các loại ngôn ngữ lập trình (Trang 31)
Hình  1.9.  Trình  biên dịch và trình thông dịch - Kỹ thuật lập trình
nh 1.9. Trình biên dịch và trình thông dịch (Trang 32)
Hình  1.10. Mô hình cùa giãi thuật - Kỹ thuật lập trình
nh 1.10. Mô hình cùa giãi thuật (Trang 33)
Sơ đồ  tiến  trình  của  chương trình  {program flowchart)  cho  thấy  các - Kỹ thuật lập trình
ti ến trình của chương trình {program flowchart) cho thấy các (Trang 35)
Hình  1.11.  Các ký hiệu cùa sơ đồ tiến trình - Kỹ thuật lập trình
nh 1.11. Các ký hiệu cùa sơ đồ tiến trình (Trang 35)
Hình  1.12.  Sơ đồ tiến trình  tìm ước sổ chung lớn nhắt cùa a và b - Kỹ thuật lập trình
nh 1.12. Sơ đồ tiến trình tìm ước sổ chung lớn nhắt cùa a và b (Trang 36)
Sơ đồ  cấu trúc cho thấy các  công việc khác nhau phải được thực hiện  và mối liên hệ giữa chúng - Kỹ thuật lập trình
c ấu trúc cho thấy các công việc khác nhau phải được thực hiện và mối liên hệ giữa chúng (Trang 41)
Bảng 1.2.  Các trường hợp kiểm thử - Kỹ thuật lập trình
Bảng 1.2. Các trường hợp kiểm thử (Trang 43)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN