You are on page 1of 17

wIDE: Integrated Development Environment

A. Project khác App khác Source Code như thế nào?


- Console Application chạy trên màn hình đen thui
- Windows Application chạy như một chương trình trên máy tính
- DLL là bộ thư viện, file thực thi chương trình; tương tự crack,
- Mỗi app/chương trình đang được viết ra, quá trình làm
ra app thì người ta gọi là làm dự án/create a project
A. Source Code thì dễ đọc - App thì thôi rồi Lượm ơi
B. “.EXE” gọi là APP đó
C. Mã nguồn mở - Open Source là cái chi chi?
- Open Source và file .EXE công khai có thể chỉnh sửa,
thay đổi source code tùy ý.
D. Đoạn code đầu tay rồi từ cái này sẽ thay đổi thế
giới
- HELLO C WORLD

*** Không được viết tên thư mục có dấu

CẤU TRÚC MÁY TÍNH


& HỆ NHỊ PHÂN
Transitor là gì, hoạt động ra sao?
- Transitor (Tranfer/ Resister) - Bóng bán
dẫn - Semi-conductor
- Biểu diễn đc 2 trạng thái có điện đi qua và
ko đi qua, ON-OFF, 0-1, VÌ 2 TRẠNG THÁI,
BINARY
Từ transitor đi đến hệ nhị phân 01010101 và đi đến vạn vật digital.
- Bóng bán dẫn dùng để biểu diễn thông tin, bd đc thì xử lí đc info
- Mỗi bóng bán dẫn nối với 1 đèn led, đống đèn led biểu diễn 1 chữ cái à từ binary/transitor à ra chữ
cái, chữ số
- Dùng dòng điện ONOFF 01 à biểu diễn đc info nào đó à do đó ta phải học về 9191910 ta phải học
nhị phân khi học máy
tính hiểu đc bản chất của việc biểu diễn info

- 1 TRẠNG THÁI 0, 1, ON OFF, CÓ ĐIỆN, KO CÓ ĐIỆN TA GỌI LÀ 1 BIT (GOM CẢ 2 THÌ GỌI LÀ BINARY)

- 1 TRANSITOR BIỂU DIỄN ĐC 2 TRẠNG THÁI, 2 BIT, 0 1

- GIANG HỒ, CÁC NHÀ THIẾT KẾ MẠCH, ĐIỆN TỬ THÍCH NÓI VỀ CÙNG 1 LÚC 1 CỤM CÁC BIT, THÍCH
LÀM VIỆC TRÊN NHIỀU BIT CÙNG 1 LÚC
- bán cho em 1 hộp sữa (ống mút đi kèm), vào kệ thì thấy 4 hộp gói thành 1 lốc
- LỐC CƠ BẢN CỦA SỮA UỐNG LÀ 4 HỘP
- LỐC CƠ BẢN CỦA TRANSITOR LÀ 8 CÁI/"8 HỘP"

8 TRANS GỌI LÀ 1 BYTE

4 TRANS GỌI LÀ LỐC/NIBBLE

1 BYTE = 8 BITS
- RAM ĐC CHẾ TẠO DỰA TRÊN NHÉT/NHỒI 1 ĐỐNG TRANS VÀO TRONG 1 ĐẾ NHỰA
- CPU ĐC CHẾ TẠO DỰA TRÊN NHÉT/NHỒI 1 ĐỐNG TRANS VÀO TRONG 1 ĐẾ NHỰA
- NHIỀU ĐẾ NHỰA/CORE NHÉT VÀO 1 MIẾNG NHỰA LỚN ĐA LÕI, MULTI-CORE
- NHÉT NHIỀU THỨ VÀO 1 CHỖ - TÍCH HỢP, INTERGRATED CIRCUIT - FI (FUEL INJECTION) à IC
- NHIỀU BYTE /NHIỀU LỐC THÌ THÀNH THÙNG SỮA
- NHIỀU BYTE / NHIỀU CỤM 8 TRANSTOR THÌ THÀNH CÁI GÌ??? CÂU CHUYỆN CỦA KB, MG, GB, TB,
HB...
BỘI SỐ CỦA BYTE MÀ THÔI.

A. Các đơn vị đo lường việc lưu trữ thông tin qua bội số của bit/Byte
xxxxxxxx xxxxxxxx xxxxxxxx … … xxxxxxxx xxxxxxxx xxxxxxxx
1 Byte 1B 1B 1B 1B 1B

1 đơn vị lớn hơn, gọi là… tuỳ độ lớn của cụm 8bit mà có tên gọi khác nhau

xxxxxxxx xxxxxxxx xxxxxxxx … … xxxxxxxx xxxxxxxx xxxxxxxx


1 Byte 1B 1B 1B 1B 1B
1000B à 1KB à 8000 TRASITORS 1 BYTE = 8 BITS
10^3B à 1KB

X...XX X...XX X..XX … X...XX X...XX X...XX

1k 1KB 1KB 1KB 1KB 1KB

1000KB = 10^3KB à 1MB

1MG LÀ 1000K MỖI KB LÀ 1000B à 1MB LÀ 1 TRIỆU BYTE

10^3 MB = 1000MB à 1GB = 1000 1000 1000 = 1 TỶ BYTE = 8 TỶ TRANS

1 TB = 1000 GB

KB/s Kbps
1KB = 1000 B = 1000 x 8b= 8000 b (bit)

{10
103=1000
2 =1024 1000

1KB = 2^10B = 1024B


~1000B
1MB = 1000 KB= 1000 x1000 = 1.000.000B
1MB = 2^10 KB= 1024KB = 1024 x 1024 = 1 576 BYTE
= 1 TRIỆU BYTE
1KB = 1000B = 1024B (tuỳ vào)
1K = 1000 cho gọn
50 K = 50.000
100k = 100.000
B. Con người đếm mọi vật quanh mình thế nào?
Dùng 10 mũ để đo lường các đơn vị, bội số của 10 để đo những đại lượng

1KG = 1000 gr = 10^3 gr

1KM = 1000m = 10^3 m

1m = 100cm = 10^2cm

Dùng 10 mũ, bội số của 10, 10 nhân mấy lần vì CON NGƯỜI CÓ 10 NGÓN TAY

===============================================

MÁY TÍNH DÙNG ĐỂ TÍNH TOÁN


LÀM SAO CÓ THỂ GIÚP MÁY TÍNH BIẾT CÁCH TÍNH TOÁN DỰA TRÊN NHỊ PHÂN/ CPS ĐIỆN VÀ KO CÓ
ĐIỆN

TRANS thì có thể dùng biểu diễn info thông qua đèn LED

TRANS còn có thể dùng để biểu diễn số lượng, đếm, tính toán

Con người có 10 ngón tay à đếm số lượng trên 10 ngón, tính toán trên số lượng

Máy tính nó chỉ có 2 trạng thái à tìm cách đếm số lượng trên 1 trạng thái

CÁC HỆ ĐẾM, CÁCH ĐẾM SỐ LƯỢNG, VÀ TÍNH TOÁN TRÊN SỐ LƯỢNG

NUMBER SYSTEMS

A. NGUYÊN TẮC ĐẾM:


- ĐẾM ĐẾN HẾT DIGIT THÌ THÔI

- GHÉP TỪ TRÁI SANG PHẢI

- KHI HẾT DIGIT, THÌ RESET VỀ 0

- KHI MỘT THẰNG NÀO VỀ 0, THẰNG KẾ BÊN PHẢI LÊN 1

- CỨ THẾ ĐẾM, GHÉP, TĂNG ĐẾN HẾT, VỀ 0

# Hệ đếm thập phân:


0 1 2 3 45 6 7 8 9 à 10 trạng thái, ứng 10 ngón, DECIMAL, DEC

Dùng 10 trạng thái và ghép cặp, cùng 1 con số, vị trí khác nhau, power/giá trị khác nhau (hàng đơn vị,
chục, trăm …)

10 trạng thái ở trên gọi là 10 digit – kí số - kí tự đc viết ra biểu diễn 1 con số/đại lượng. Cùng digit, khác
vị trí, giá trị khác nhau

0 9 18 27

1 10 19 28

2 11 20 29

3 12 21 30

4 13 22 …

5 14 23 95

6 15 24 96

7 16 25 97

8 17 26 98
99 Ví dụ : CÔNG TƠ MÉT CỦA XE 00000000
MÁY
100

# HỆ NHỊ PHÂN – LOÀI NGƯỜI CHỈ CÓ 2 NGÓN, ĐẾM LÀM SAO Y CHANG - BINARY
( 0 1 đếm mọi thứ )

10

11

100

101

110 à khi tất cả về 0 hết thì thêm số 1 vào trước

111

1000

# HỆ THẬP LỤC PHÂN – HEXA DECIMAL


16 ngón tay lận, 0 1 2 3 4 5 6 7 8 9 A B C D E F

è Tăng chậm hơn, hết ngón chậm hơn DEC, BIN, Do đó cần ít kí tự hơn

0 B 14 1F 2D 9C AC BE

1 C 15 20 2E 9D AD BF

2 D 16 21 2F 9E AE C0

3 E 17 22 30 9F AF …

4 F 18 23 … A0 B0 FF

5 10 à 10 khác 19 … 96 A1 B1 100
với DEC (HEX là
6 10= 16) 1A 28 97 A2 …B9

7 11 1B 29 98 … BA

8 12 1C 2A 99 A9 BB

9 13 1D 2B 9A AA BC

A 1E 2C 9B AB BD
 100 xuất hiện rất trễ, 16 ngón để ghép, bên thập phân đã đi xa rồi

Bí thuật xử lí thông tin của loài người: đặt tên cho mọi thứ và công thức hóa các tính
toán

* RAM có cấu tạo thế nào?

- chứa được vô số các transitor nằm sát với nhau, từng lốc 8 transitor với nhau

Vô số TRANSITOR

* Địa chỉ bộ nhớ là cái chi chi?

- Địa chỉ đầu tiên là byte thứ 0 tăng lên đến byte thứ n. Mỗi byte nằm ở vị trí khác nhau
được gọi là địa chỉ bộ nhớ. Biến nằm ở 4 byte thì có 4 địa trỉ à địa chỉ trong byte đầu tiên
người ta quy ước rằng là địa chỉ của một biến, tọa độ hay vị trí của byte đầu tiên được
cấp hay nhiều byte được cấp.

* Lưu trữ dữ liệu trong RAM - khai báo biến - declare a variable

* Địa chỉ của biến

In địa chỉ của biến

- printf(“ ”%u , &tên biến );


* Một biến có thể nói những điều gì cho bạn?

- Biến là vùng nhớ được đặt tên ở trong RAM, bên trong chứa các giá trị và nằm ở một
địa chỉ (tọa độ) trong RAM được gọi là địa trị của biến. Đó là 1 con số nói về số thứ tự
của byte đầu tiên trong RAM

- Gán giá trị cho biến bằng dấu “=”

- Có thể hỏi giá trị là bao nhiêu và dùng printf “” với % tương ứng

BẢNG ÁNH XẠ CÁC HỆ ĐẾM, NUMBER SYSTEM


HỌC CÁCH ĐẾM CÁC ĐỒ VẬT, ĐẾM 100 CON BÒ NGOÀI CÁNH ĐỒNG

NẾU LÀ NGƯỜI LA MÃ NGƯỜI TA SẼ DÙNG CÁC KÍ TỰ /KÍ HIỆU I II III IV V IX X VÀ GHÉP VÀ ĐẾM

NGƯỜI Ả RẬP VIỆT KIỂU KHÁC, 0123456789 GHÉP CẶP

DECIMAL(DEC) HEXA-DECIMAL OCTAL (OCT) BINARY


Thập phân (HEX) bát phân (Bin)
thập lục phân nhị phân
0 0 0 0
1 1 1 1
2 2 2 10
3 3 3 11
4 4 4 100
5 5 5 101
6 6 6 110
7 7 7 111
8 8 10 1000
9 9 11 1001
10 A 12 1010
11 B 13 1011
12 C 14 1100
13 D 15 1101
14 E 16 1110
15 F 17 1111
16 10 20 10000
17 11 21
18 12 22
19 13 23
20 14 24

2022 ?

Kĩ thuật chuyển đổi giữa các hệ đếm/number system

Hệ cơ số 10 sang 16

Base: hệ đếm, hệ cơ số

0 1 2 3 4 . . . digit

Chẳng qua là nhân chia cộng trừ 1 hồi à THUẬT TOÁN CHUYỂN ĐỔI GIỮA CÁC HỆ ĐẾM/ CƠ SỐ
Example:

2002 gồm những con số nào, tách số


: 10 à dư 2
200 : 10 à 0
20 : 10 à 0
1 : 10 à 2

MÁY TÍNH SINH RA ĐỂ TÍNH TOÁN, TÍNH CÁC PHÉP TOÁN


MUỐN TÍNH TOÁN THÌ CẦN:
- HỆ ĐẾM, CON SỐ - OPERAND/TOÁN HẠNG/SỐ HẠNG
- PHÉP TÍNH, + - * / OPERATOR
- SO SÁNH . . .
5 + 5 = 10
OPERAND OPERATOR OPERAND GÁN/ASSIGN RESULT
Toán hạng Toán tử
Phép toán đại lượng
MÁY TÍNH PHẢI GIÚP TA
- Lưu trữ DATA/INFO nói chung, toán hạng, số hạng nói riêng
- TÍnh giùm
- Con người chế ra số, phép tính, và họ sẽ làm toán
- Có cách nào đó để đưa số và phép tính vào một cái máy, máy tính giùm mình luôn à lập trình, máy
biến thành máy tính toán – COMPUTE/COMPUTER teach/teacher manage/manager

----------------------------------------------------

LẬP TRÌNH TRONG MÁY TÍNH, GIÚP MÁY TÍNH TOÁN GIÙM

- CON NGƯỜI CHẾ RA CÔNG THỨC TÍNH TOÁN + BIẾN ĐỂ GIẢI QUYẾT 1 LỚP CÁC BÀI TOÁN
- TA ĐỨA BIẾN ( VALUE ĐƯA SAU ) + CÔNG THỨC VÀO MÁY TÍNH
LÁT HỒI ĐƯA/ ADD VALUE VÀO BIẾN à MÁY TÍNH XONG KẾT QUẢ
CÚ ĐẦU TIỀN CHƠI LẬP TRÌNH
- ĐƯA BIẾN/VALUE VÀO TRONG MÁY TÍNH – KHAI BÁO BIẾN DECLATE A VARIABLE
- BIẾN/VALUE SẼ NẰM TRONG RAM !!!!

HÌNH DÁNG/HÌNH THÁI DỮ LIỆU – CÁCH THẤY/DỮ LIỆU CÓ DẠNG NHƯ THẾ NÀO – DATA TYPES

1. SỐ *
a. Nguyên (nguyên con,ko lẻ miếng nào)
- Nhỏ:
Byte( -128 ... +127 | 0...225)
- Vừa:
Int( -2 tỉ 1  + 2 tỉ 1) int yob; tao cần 1 con số vừa vừa ko lẻ
miếng nào
int yob = 2004;
Declare a variable
Xin 1 vừng ram chứa data nào đó

int a,b,c ;
//chưa có value, value RÁC !!!
int a= 10, b , c ;  Xin mà chưa gán thì có thể thêm sau
b = 20;
c =30;
int b= 20; // KO CHẤP NHẬN 2 VÙNG RAM TRÙNG TÊN NHAU
BIẾN KO ĐƯỢC TRÙNG TÊN, KO ĐC KHAI BÁO 2 BIẾN TRÙNG TÊN
int d;
int e=20;
int f ;
f=30;
TẠI 1 THỜI ĐIỂM, 1 BIẾN CHỈ LƯU ĐÚNG 1 VALUE

- Bự:

Long (+-2^63) long amount= 4 000 000 000;

b. Lẻ/Thực (mẻ/bể 1 góc)


- Vừa
float( +- 10^38) float pi = 3,14
float discount = 0,1 //10%
- Bự
double( +-10^308)
- Kiểu dữ liệu byte, int, long, double, char là những thứ cơ bản để ta xử lí infor
- Khi ta xđ loại data ta cần lưu trữ, lập tức CPU sẽ cấp ngay 1 số byte tương ứng !!!
// Nhập dữ liệu

Byte int, long, float, double, char


1 4 8 4 8 1 (BYTE)

IN RA, PHẢI DẠY CHO MÁY CÁCH NÓ IN RA, DÙNG KÍ HIỆU % DẠY NÓ IN RA

NHẬP TỪ BÀN PHÍM, PHẢI DẠY CHO MÁY CÁCH NÓ ĐƯA DATA TỪ BÀN PHÍM VÀO RAM VÀ ON-OFF
TƯƠNG ỨNG, DÙNG KÍ HIỆU % DẠY NÓ CÁCH CONVERT PHÍM THÀNH 010101

% ĐỊNH DẠNG DATA, FORMAT OF DATA, ÉP DATA PHẢI THÀNH CÁI GÌ, TRONG RAM TOÀN ON-OFF

Byte, int, long, float, double, char


1 4 8 4 8 1 (BYTE)

%d %ld %f %lf %C

d:decimal

ld: long decimal

f: float, số thực lẻ miếng 3.14

lf: long float – double, số thực bự

LỆNH PRINTF(_) HOẠT ĐỘNG THEO CÁCH ĐIỀN VÀO CHỖ TRỐNG

//int yob = 2004;

int yob;

yob = 2004

Printf(“Nam sinh cua ban la: %d\n”, yob);

Tao cần điền chỗ này 1 con số nguyên nhỏ

Scanf(“%d”,&yob);  chỉ nhập từ bàn phím

 MỖI KIỂU DỮ LIỆU CÓ MIỀN GIÁ TRỊ MIN -MAX

C HỖ TRỢ CÁC PHÉP TOÁN ĐỂ TÍNH TRÊN CÁC CON SỐ, Y CHANG NGOÀI ĐỜI....

OPERATOR (phép toán) + - * / % chia lấy dư

Cần 2 toán hạng/số hạng/OPERAND

++ --

Dồn/nhồi( có rồi, ép thêm vô)

+= -= *= /= %=

NGUYÊN CHƠI VỚI NGUYÊN  CHỈ RA NGUYÊN ( do đó phải ép kiểu )


Ví dụ :
THỰC CHƠI VỚI ĐỨA NÀO CŨNG LÀ THỰC

*/+ -

2. CHỮ*
3. ẢNH
4. PHIM
5. ÂM NHẠC
6. DOCUMENT
...
#NOTE:

Unsigned <ten kieu du lieu> để lưu số có dấu

A++ tăng sau khi giải quyết các bài toán

++A tăng A rồi sau đó mới tính toán


ASSINGMENT OPERATORS

Relational operators
== so sánh bằng
= gán
!= so sánh khác
-Dùng kiểu dữ liệu int để thay cho kiểu dữ liệu đúng sai
-Trong ngôn ngữ C : 0 là sai, tất cả các số khác 0 là đúng

Cấu Trúc Rẽ Nhánh IF ELSE


CÁCH LƯU SỐ NGUYÊN DƯƠNG VÀ ÂM TRONG MÁY TÍNH -KĨ THUẬT SỐ BÙ
2-
TWO’S COMPLEMENT
- Dùng 1 số bit nhất định để lưu 1 con số nguyên (+ -)
32 bit /4 byte để lưu con số nguyên vừa vừa int (-2ty1 +2ty1)
- Biểu diễn +- như thế nào, người ta trích ra, dùng bit bên trái nhất gọi là bit
dấu - sign bit, quy ước it này là 1  số âm

0  số dương

Bị hụt mất 1 bit để biểu diễn giá trị

Int 32 bit, dùng 31 bit để biểu diễn giá trị + -, bit 32 dùng làm dấu 2^31 là
giá trị

*Ví dụ :xài 4 bit để lưu số nguyên

You might also like