Professional Documents
Culture Documents
Mc tiu
Gii quyt nhng bi ton c bn vi chng trnh my tnh. Dng mt trong cc ngn ng lp trnh vit chng trnh. V d ngn ng lp trnh C.
Hc
- Ngn ng lp trnh C. - T chc chng trnh theo lp trnh th tc. - Nhng k nng lp trnh.
Ni dung
Ch1- Cc khi nim c bn.
4. H.M. Deitel and P.J. Deitel (1998), C++ How to program, 2nd Edition, Prentice Hall.
nh gi
KT gia k: thi trn my, 20%
Chng 1
Cc khi nim c bn
My tnh (computer) ?
My tnh: - L thit b c kh nng thc hin cc php tnh v a ra cc quyt nh c tnh logic. - X l d liu di s iu khin ca tp cc ch th (cu lnh) - c gi l chng trnh my tnh. Phn cng: - Cc thit b khc nhau cu thnh my tnh (cc n v x l, b nh, a, bn phm,) Phn mm: - Cc chng trnh chy trn my tnh.
Cc n v c bn ca my tnh
Control Unit
Input Arith. & Logic Unit Output
Main memory
Secondary Memory
Ngn ng lp trnh
Ngn ng my +1300042774 +1400593419 +1200274027 LOAD A ADD B STORE C
Ngn ng t hp
Ngn ng cp cao
C=A+B
Ngn ng t hp:
Dng cc t vit tt ca nhng t ting Anh lm ch th cho my tnh. V d:
MOV
ADD MOV
AX, 0123
AX, 0025 CX, AX
Ngn ng cp cao:
Cc ch th c dng nh ting Anh hng ngy. V d:
SUM = A + B
Ngn ng lp trnh
Ngn ng my +1300042774 +1400593419 +1200274027 LOAD A ADD B STORE C
Ngn ng t hp
Ngn ng cp cao
C=A+B
Trnh dch
C libaray hello.c compile hello.o hello
Edit
Link
Source File
(High-Level Languages)
Object File
(Machine Languages)
Executable
Chng trnh dch chuyn i chng trnh t NN cp cao (NN t hp) thnh NN my.
Trnh bin dch (compiler): chuyn mt chng trnh NN cp cao sang ngn my.
Trnh thng dch (interpreter): phn tch v thc thi tng cu lnh ca chng trnh NN cp cao.
- Bi ton c th c phn thnh nhng bi ton nh hn gii quyt Xc nh cc th tc (hm) cn thit tng ng. - Dng gii thut tt nht tm c.
-Tp {th tc} c lin quan ti d liu m chng tc ng c gom nhm = m-un. - Xc nh m-un cn Phn chng trnh sao cho d liu n trong m-un.
- Cc k thut xy dng th tc tt vn c p dng cho tng th tc trong m-un.
- Xc nh lp cn.
- Cung cp tp php ton/thao tc trn mi lp. - Lm cho lp hot ng hiu qu nh tha k.
Lch s ca C
Ngn ng C c thit k bi Dennis Ritchie ti phng th nghim Bell (cng ty AT&T - M) vo u nhng nm 1970. Chu nh hng pht trin ca mt s ngn ng: ALGOL 60 (1960), CPL (Cambridge, 1963), BCPL (Martin Richard, 1967),
C v C++
C++ m rng t C, c pht trin bi Bjarne Stroustrup ti PTN. Bell u 1980s. C++ c thm nhiu khi nim c bn mi, to c s cho lp trnh hng i tng v mt s c tnh thun li khc cho nhng d n pht trin phn mm.
Lp trnh
?
- Pht biu bi ton.
- Gii c bi ton.
- Vit thut ton cho li gii bi ton. - Vit chng trnh (son tho m ngun) cho my tnh bng mt NNLT (C), lu vo my tnh, gi y l chng trnh ngun.
C libaray hello.c Source File compile hello.o Object File hello Executable
Edit
Link
- Gi trnh bin dch: dch chng trnh ngun sang m my; gi trnh lin kt thc thi, y l bc chy chng trnh. - Nu trnh bin dch bo li, y l li c php xem & sa chng trnh ngun. - KQ m MT gii c l khng ng yu cu, y l li logic xem li cch gii, thut ton & chng trnh.
Thut ton
Vn
Nhng vng mc, kh khn trong cuc sng m ta cn gii quyt. Bi ton
Mt loi vn m gii quyt, cn n tnh ton (php ton s, lun l, quan h).
Thut ton
Thut ton
Cch biu din li gii "bi ton r rng, chi tit c th thc thi c trn my tnh.
Bi ton gii phng trnh bc 1- 1 n. (??)
V d: ()