Ngôn ngữ lập trình c cơ bản cho 8051

     

Giới thiệu ngôn ngữ C

Trong kỹ thuật lập trình vi tinh chỉnh nói chung, ngữ điệu lập trình được sử dụng thường chia thành 2 loại: ngôn ngữ bậc rẻ và ngôn ngữ bậc cao. Ngữ điệu bậc cao là những ngôn ngữ sát vơi ngôn ngữ con người hơn, cho nên vì vậy việc xây dựng bằng những ngôn ngữ này trở nên dễ ợt và dễ dàng và đơn giản hơn. Hoàn toàn có thể kể đến một số ngôn ngữ lập trình bậc cao như C, Basic, Pascal… trong dó C là ngữ điệu thông dụng hơn cả trong kỹ thuật vi điều khiển. Về bạn dạng chất, sử dụng các ngôn ngữ này nỗ lực cho ngôn ngữ bậc thấp là bớt tải cho lập trình viên trong việc nghiên cứu và phân tích các tập lệnh và thiết kế các cấu tạo giải thuật.


*

chương trình viết bằng ngôn ngữ bậc cao cũng biến thành được một phần mềm trên máy vi tính gọi là trình biên dịch (Compiler) đưa sang dạng phù hợp ngữ trước khi chuyển sang trọng mã máy.Khi sử dụng ngữ điệu C fan lập trình không yêu cầu hiểu sâu sắc về kết cấu của cỗ vi điều khiển. Có nghĩa là với một tín đồ chưa quen với một vi điểu khiển cho trước sẽ xây dựng được lịch trình một cách mau lẹ hơn, do không phải mất thời gian mày mò kiến trúc của vi điều khiển và tinh chỉnh đó. Với việc áp dụng lại các chương trình đã kiến thiết trước kia cũng dễ ợt hơn, hoàn toàn có thể sử dụng cục bộ hoặc thay thế một phần.

Bạn đang xem: Ngôn ngữ lập trình c cơ bản cho 8051

C sẽ được tạo thành với một kim chỉ nam là khiến cho nó dễ dàng để viết các chương trình lớn với số lỗi thấp hơn trongmẫu hìnhlập trình thủ tụcmà lại không đặt gánh nặng trĩu lên vai tín đồ viết ratrình dịchC, là hồ hết người bộn bề với các đặc tả phức tạp của ngôn ngữ. Cuối cùng C bao gồm thêm những tác dụng sau:

Mộtngôn ngữ cốt lõiđơn giản, với các chức năng quan trọng chẳng hạn như là các hàm hay câu hỏi xử lý tập tin đang được cung ứng bởi những bộthư viện các thủ tục.Tập trung trên mẫu mã hìnhlập trình thủ tục, với các phương tiện xây dựng theo kiểucấu trúc.Một hệ thống kiểu đơn giản nhằm loại để nhiều phép toán không có ý nghĩa thực dụng.Dùng ngôn ngữtiền xử lý, tức là các câu lệnhtiền cách xử lý C, cho những nhiệm vụ như thể định nghĩa cácmacrovà hàm chứa được nhiều tập tinmã nguồn(bằng phương pháp dùng câu lệnh tiền giải pháp xử lý dạng#includechẳng hạn).Mức tốt của ngôn ngữ cho phép dùng tớibộ nhớ thứ tínhqua việc thực hiện kiểu dữ liệupointer.Số lượng trường đoản cú khóa rất nhỏ tuổi gọn.Cáctham sốđược gửi vào các hàm bằng giá trị, không bởi địa chỉ.Hàm những con trỏ chất nhận được hình thành một nền tảng lúc đầu chotính đóngvàtính nhiều hình.Hỗ trợ cácbản ghihay các kiểu dữ liệu phối kết hợp do người tiêu dùng từ khóa định nghĩastructcho phép những dữ liệu tương tác nhau hoàn toàn có thể được tập phù hợp lại với được kiểm soát và điều chỉnh như là toàn bộ.

Cấu trúc chươngtrình

Các #include ( dùng làm khai báo sử dụng các hàm chuẩn)Các #define ( dùng để làm định nghĩa những hằng )Khai báo các đối tượng dữ liệu kế bên ( biến, mảng, kết cấu vv..).Khai báo nguyên mẫu những hàm.Hàm main().Định nghĩa các hàm ( hàm main có thể đặt sau hoặc xen vào giữa những hàm khác).

* Ví dụ:// Khai báo thông tư tiền xử lý:#include #include #define Led1 P1_0//*********************************// Khai báo biến đổi toàn cục: Unsigned char code Led_arr<3>; Unsigned char data dem; Unsigned int xdata X;//*********************************// Khai báo nguyên chủng loại hàm Void delay(unsigned int n); bit kiemtra(unsigned int a);//*********************************// Xây dựng những hàm và công tác chính: void delay(unsigned int n) Khai báo thay đổi cục bộ;Mã công tác trễ; Void main() // Chương trình bao gồm Khai báo biến đổi cụ bộ;Mã công tác chính; Bit kiemtra(unsigned int a) Khai báo biến chuyển cục bô;Mã chương trình kiểm tra trở nên a;

Thao tácvào/ra

Cần yêu cầu khai báo tủ sách #include

In ra màn hình

printf(“chuỗi định dạng” <, đối mục 1, đối mục 2,…>);

VD: printf( “Hello “); —> in loại Hello ra màn hình.

VD: printf(“”%d”, x); —> in giá trị x ra màn hình.

Chức năng: Đưa hiệu quả các ra màn hình

– : dùng để làm định dạng cho dữ liệu xuất ra màn hình của những – , …: là các mục dữ kiện phải in ra màn hình. Các hoàn toàn có thể là biến, hằng hoặc biểu thức yêu cầu được định trị trước lúc in ra (có thể ko có).

– Chuỗi định dạng: được để trong cặp nháy kép (” “), tất cả 2 loại:+ Đối với chuỗi kí trường đoản cú ghi ra sao in ra y hệt như thế ấy.+ Đối với gần như kí tự thay đổi dạng thức cho phép kết xuất giá chỉ trị của các đối mục ra screen tạm call là mã định dạng.

Sau đó là các dấu miêu tả định dạng:

%c : ký tự đơn%s : Chuỗi%d : Số nguyên hệ thập phân%f : Số chấm cồn (ký hiệu thập phân)%e : Số chấm động (ký hiệu có số mũ)%g : dùng %e hoặc %f, tuỳ theo một số loại nào ngắn hơn, ko in các số 0 vô nghĩa%x : Hệ 16 ko dấu%u : Số thập phân không dấu%o : Số nguyên chén bát phân ko dấul : chi phí tố ăn với với %d, %u, %x, %o để chỉ số nguyên nhiều năm (ví dụ %ld)

Các cam kết tự điều khiển và tinh chỉnh và ký kết tự sệt biệt

: khiêu vũ xuống dòng tiếp nối canh về cột đầu tiên. : Canh cột tab ngang. : nhảy đầm về đầu hàng, ko xuống hàng.a : giờ đồng hồ kêu bip.\ : In ra vệt \” : In ra vết “’ : In ra dấu ‘%%: In ra vết %

Nhập vào

scanf(“%d “,&x);dọc dữ liệu từ keyboard và lưu giữ vào biến x bao gồm kiểu số nguyên

gets(s);dùng nhằm nhập chuỗi

Kiểu dữ liệu

Loại dữ liệuKiểu dữ liệuSố ô nhớMiền giá bán trị
Booleanbool1 byte0 (FALSE)hoặc1(TRUE).
Ký tựchar1 byte-127 tới 127 hoặc 0 cho tới 255
unsignedchar1 byte0 tới 255
signedchar1 byte-127 tới 127
Sốnguyênint4 byte-2147483648 cho tới 2147483647
unsigned int4 byte0 tới 4294967295
signed int4 byte-2147483648 tới 2147483647
short int2 byte-32768 tới 32767
long int4 byte-2,147,483,647 cho tới 2,147,483,647
Số thựcfloat4 byte+/- 3.4e +/- 38 (~7 chữ số)
double8 byte+/- 1.7e +/- 308 (~15 chữ số)
longdouble8 byte+/- 1.7e +/- 308 (~15 chữ số)

Ép mẫu mã trong C:

(Ten-kieu) Bieu_thuc;Ví dụ: int a,b;( float) a+b; //a+b lấy cực hiếm thực

Hằng,biến

Khai báo hằng: #define

VD: #define MAX 10;

const =

VD: const int MAX=10;

2. Khai báo biến

;

VD: int x=0;

Các phép toán vào C

1. Toán tử số học trong C

Giả sử biến chuyển A giữ quý giá 10, biến đổi B giữ 20 thì:

Toán tửMiêu tảVí dụ
+Cộng nhị toán hạngA + B hiệu quả là 30
Trừ toán hạng sản phẩm công nghệ hai từ bỏ toán hạng đầuA – B kết quả là -10
*Nhân nhị toán hạngA * B tác dụng là 200
/Phép chiaB / A kết quả là 2
%Phép mang số dưB % A công dụng là 0
++Toán tử tăng (++), tăng giá trị toán hạng thêm một đơn vịA++ tác dụng là 11
Toán tử bớt (–), giảm giá trị toán hạng đi một đơn vịA– công dụng là 9

2. Toán tử quan hệ nam nữ trong C

VD: A=10, B=20.

Toán tửMiêu tảVí dụ
==Kiểm tra ví như 2 toán hạng bằng nhau hay không. Nếu bằng thì điều kiện là true.(A == B) là false
!=Kiểm tra 2 toán hạng có giá trị khác biệt hay không. Nếu không bằng thì đk là true.(A != B) là true
>Kiểm tra giả dụ toán hạng bên trái có giá trị to hơn toán hạng bên phải hay không. Nếu như lớn hơn thì điều kiện là true.(A > B) là false
=Kiểm tra giả dụ toán hạng bên trái có giá trị to hơn hoặc bằng giá trị của toán hạng bên yêu cầu hay không. Nếu và đúng là true.(A >= B) là false

3. Toán tử đối chiếu bit vào C

Toán tử đối chiếu bit thao tác làm việc trên đơn vị bit, thống kê giám sát biểu thức so sánh từng bit. Bảng dưới đây về &, |, cùng ^ như sau:

pqp & qp | qp ^ q
00000
01011
11110
10011

Các toán tử đối chiếu bit được cung cấp bởi ngữ điệu C được liệt kê trong bảng dưới đây. Giá bán sử ta có biến A có mức giá tri 60 và biến chuyển B có giá trị 13, ta có:

Toán tửMiêu tảVí dụ
&Toán tử and (và) nhị phân sao chép một bit tới hiệu quả nếu nó tồn tại trong cả nhị toán hạng.(A & B) đang cho kết quả là 12, có nghĩa là 0000 1100
|Toán tử OR (hoặc) nhị phân sao chép một bit tới công dụng nếu nó trường tồn trong một hoặc hai toán hạng.(A | B) vẫn cho công dụng là 61, tức là 0011 1101
^Toán tử XOR nhị phân xào nấu bit nhưng mà nó chỉ tồn tại trong một toán hạng mà không hẳn cả hai.(A ^ B) đã cho tác dụng là 49, tức là 0011 0001
~Toán tử hòn đảo bit (đảo bit 1 thành bit 0 và ngược lại).

Xem thêm: Các Tiêu Chí Nào Dùng Để Phân Loại Sinh Vật ? Tiêu Chí Nào Được Dùng Để Phân Loại Sinh Vật

(~A ) vẫn cho hiệu quả là -61, tức là 1100 0011.
>Toán tử dịch phải. Quý hiếm toán hạng trái được dịch rời sang đề nghị bởi số những bit được khẳng định bởi toán hạng mặt phải.A >> 2 vẫn cho công dụng là 15, tức là 0000 1111 (dịch sang cần hai bit)

4. Toán tử gán trong C

Toán tửMiêu tảVí dụ
=Toán tử gán solo giản. Gán giá trị toán hạng bên đề nghị cho toán hạng trái.C = A + B đã gán quý hiếm của A + B vào vào C
+=Thêm quý hiếm toán hạng nên tới toán hạng trái và gán cực hiếm đó mang lại toán hạng trái.C += A tương tự với C = C + A
-=Trừ đi cực hiếm toán hạng buộc phải từ toán hạng trái với gán giá trị này mang đến toán hạng trái.C -= A tương tự với C = C – A
*=Nhân quý hiếm toán hạng nên với toán hạng trái và gán giá trị này đến toán hạng trái.C *= A tương tự với C = C * A
/=Chia toán hạng trái đến toán hạng buộc phải và gán quý hiếm này mang lại toán hạng trái.C /= A tương đương với C = C / A
%=Lấy phần dư của phép phân chia toán hạng trái mang đến toán hạng cần và gán mang đến toán hạng trái.C %= A tương đương với C = C % A
>=Dịch đề nghị toán hạng trái thanh lịch số địa chỉ là giá trị toán hạng phải.C >>= 2 tương tự với C = C >> 2
&=Phép và bitC &= 2 tương đương với C = C & 2
^=Phép OR thải trừ bitC ^= 2 tương tự với C = C ^ 2
|=Phép OR bit.C |= 2 tương đương với C = C | 2

5. Những toán tử các thành phần hỗn hợp trong C

Toán tửMiêu tả
sizeofToán tử sizeof trong C trả về form size của một biến. Ví dụ: sizeof(a), với a là integer, đã trả về 4
Điều khiếu nại ? X : YToán tử điều kiện trong C. Giả dụ Condition là true ? thì nó trả về quý giá X : còn nếu không thì trả về Y
,Toán tử Comma vào C khiến cho một dãy hoạt động được thực hiện. Giá trị của toàn biểu thức comma là cực hiếm của biểu thức sau cùng trong list được rõ ràng bởi lốt phảy
. (dot) cùng -> (arrow)Toán tử member trong C được thực hiện để tham chiếu các thành phần đơn của các lớp, những cấu trúc, cùng union
CastToán tử ép kiểu (Casting) vào C thay đổi một kiểu dữ liệu thành hình trạng khác. Ví dụ: int(2.2000) đang trả về 2
&Toán tử nhỏ trỏ và trong C trả về add của một biến. Ví dụ: &a; đang trả về add thực sự của phát triển thành này
*Toán tử bé trỏ * vào C là trỏ cho tới một biến. Ví dụ: *var sẽ trỏ cho tới một đổi mới var

6. Toán tử súc tích trong C

Giả sử trở thành A có mức giá trị 1 và biến hóa B có giá trị 0:

Ví dụ toán tử logic

Toán tửMiêu tảVí dụ
&&Được call là toán tử ngắn gọn xúc tích AND (và). Nếu như cả hai toán tử đều phải có giá trị khác 0 thì điều kiện trở lên true.(A && B) là false.
||Được gọi là toán tử lô ghích OR (hoặc). Nếu một trong các hai toán tử không giống 0, thì đk là true.(A || B) là true.
!Được gọi là toán tử NOT (phủ định). Thực hiện để đảo trái lại trạng thái súc tích của toán hạng đó. Nếu đk toán hạng là true thì phủ định nó vẫn là false.!(A && B) là true.

Xem thêm: Game Phù Thủy Chế Thuốc Sắc Đẹp 24H, Game Phù Thủy Chế Thuốc

7. đồ vật tự ưu tiên toán tử vào C

Bảng tiếp sau đây liệt kê trang bị tự ưu tiên của các toán tử. Các toán tử với quyền ưu tiên cao nhất xuất hiện trên cùng của bảng, và các toán tử gồm quyền ưu tiên thấp độc nhất thì ở dưới cùng của bảng. Vào một biểu thức, các toán tử tất cả quyền ưu tiên tối đa được đo lường và thống kê đầu tiên.

LoạiToán tửThứ tự ưu tiên
Postfix() <> -> . ++ – –Trái thanh lịch phải
Unary+ – ! ~ ++ – – (type)* & sizeofPhải sang trọng trái
Tính nhân* / %Trái sang phải
Tính cộng+ –Trái sang phải
Dịch chuyểnTrái sang phải
Quan hệ=Trái sang phải
Cân bằng== !=Trái sang phải
Phép & bit&Trái lịch sự phải
Phép XOR bit^Trái lịch sự phải
Phép OR bit|Trái sang trọng phải
Phép and logic&&Trái sang trọng phải
Phép OR logic||Trái lịch sự phải
Điều kiện?:Phải sang trái
Gán= += -= *= /= %=>>=

Tham khảo: https://tienich123.wordpress.com/