Toán Tử Logic, Toán Tử Trên Bit Và Toán Tử Gán Trong C++ - Góc Học IT
Có thể bạn quan tâm
1. Toán tử logic
Những toán tử này được áp dụng cho kiểu luận lý (bool). Kết quả của toán tử logic trả về true (1) hoặc false (0). Các toán tử logic là AND (&&), OR (||), NOT (!).
Toán tử AND (&&)
Gọi là toán tử “và”. Nếu cả hai toán hạng đều có giá trị true thì kết quả là true. Những trường hợp khác kết quả là false.a b a && b true true true true false false false true false false false false
Toán tử OR (||)
Gọi là toán tử “hoặc”. Chỉ cần một toán hạng có giá trị true thì kết quả là true. Nếu cả hai toán hạng là false thì kết quả mới là false.a b a || b true true true true false true false true true false false false
Toán tử NOT (!)
Gọi là toán tử “phủ định”. Sử dụng để đảo ngược lại trạng thái logic của toán hạng đó. Nếu toán hạng là true thì phủ định của nó sẽ là false. Nếu toán hạng là false thì phủ định của nó sẽ là true.
Chương trình minh họa toán tử logic
#include <iostream> using namespace std; int main() { int a = 5, b = 5, c = 10, result; result = (a == b) && (c > b); cout<<"(a == b) && (c > b) is "<<result<<endl; result = (a == b) && (c < b); cout<<"(a == b) && (c < b) is "<<result<<endl; result = (a == b) || (c < b); cout<<"(a == b) || (c < b) is "<<result<<endl; result = (a != b) || (c < b); cout<<"(a != b) || (c < b) is "<<result<<endl; result = !(a != b); cout<<"!(a != b) is "<<result<<endl; result = !(a == b); cout<<"!(a == b) is "<<result<<endl; system("pause"); }Kết quả:
(a == b) && (c > b) is 1 (a == b) && (c < b) is 0 (a == b) || (c < b) is 1 (a != b) || (c < b) is 0 !(a != b) is 1 !(a == b) is 02. Toán tử trên bit
Toán tử trên bit tác động lên các bit của toán hạng và xử lý cho từng bit của toán hạng.
Có các toán tử trên bit
Ký hiệu | Ý nghĩa | Kiểu áp dụng | Ví dụ |
& | AND trên bit | Kiểu số | a & b |
| | OR trên bit | Kiểu số | a | b |
^ | XOR trên bit | Kiểu số | a ^ b |
~ | Phủ định trên bit | Kiểu số | ~a |
<< | Dịch trái chuỗi bit | Kiểu số | a << 2 |
>> | Dịch phải chuỗi bit | Kiểu số | a >> 2 |
Toán tử AND
A | B | A & B |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Toán tử AND trả về giá trị 1 nếu cả hai toán hạng đều có giá trị 1. Ví dụ:A 0000 1100 B 0101 0101 C = A & B 0000 0100
Toán tử OR
A | B | A | B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Toán tử OR trả về giá trị 0 nếu cả hai toán hạng đều có giá trị 0. Ví dụ:A 0000 1100 B 0101 0101 C = A | B 0101 1101
Toán tử XOR
A | B | A ^ B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Toán tử XOR trả về giá trị 0 nếu cả hai toán hạng có cùng giá trị, cùng giá trị 1 hoặc cùng giá trị 0. Ví dụ:A 0000 1100 B 0101 0101 C = A ^ B 0101 1001
Toán tử NOT
A | ~A |
0 | 1 |
1 | 0 |
Toán tử NOT đảo bit 1 thành 0 và ngược lại. Ví dụ:A 0000 1100 B = ~A 1111 0011
Toán tử dịch trái và toán tử dịch phải
Trong dịch chuyển số học, các bit được dịch chuyển ra khỏi bit đầu hoặc bit đuôi sẽ bị loại bỏ. Trong phép dịch chuyển số học về bên trái, các số 0 được dịch chuyển vào bên phải. Trong phép dịch chuyển số học bên phải, bit thể hiện dấu được thêm vào bên trái, do đó dấu của số được giữ nguyên.
Ví dụ:
int a=23; a<<1; /*Dịch chuyển trái 00010111 (số thập phân +23) = 00101110 (số thập phân +46)*/ int b=-105; b>>1; /*Dịch chuyển phải 10010111 (số thập phân -105) =11001011 (số thập phân -53)*/ int c=23; c<<2; /*Dịch sang trái 2 lần 00010111 (số thập phân +23) = 01011100 (số thập phân +92)*/3. Toán tử gán
Toán tử gán dùng để gán giá trị cho biến, ký hiệu là “=”. Câu lệnh gán sẽ đặt giá trị vào vùng nhớ của biến.
Các toán tử gán:
Ký hiệu | Ý nghĩa | Kiểu áp dụng | Ví dụ | Tương đương |
= | Phép gán A = B | Tất cả các kiểu | i = 5 | i = 5 |
+= | Tương đương A = A+B | Các kiểu số | i += 3 | i = i + 3 |
-= | Tương đương A = A-B | Các kiểu số | i -= 3 | i = i – 3 |
*= | Tương đương A = A*B | Các kiểu số | i *= 3 | i = i * 3 |
/= | Tương đương A = A/B | Các kiểu số | i /= 3 | i = i / 3 |
%= | Tương đương A = A%B | Kiểu số nguyên | i %= 3 | i = i % 3 |
Chương trình C++ minh họa toán tử gán
#include <iostream> using namespace std; int main() { int a = 5, c; c = a; // c is 5 cout<<"c = "<<c<<endl; c += a; // c is 10 cout<<"c = "<<c<<endl; c -= a; // c is 5 cout<<"c = "<<c<<endl; c *= a; // c is 25 cout<<"c = "<<c<<endl; c /= a; // c is 5 cout<<"c = "<<c<<endl; c %= a; // c = 0 cout<<"c = "<<c<<endl; system("pause"); }Kết quả:
c = 5 c = 10 c = 5 c = 25 c = 5 c = 0Lưu ý: Không được nhầm lẫn toán tử gán “=” với toán tử so sánh bằng “= =”.
- Xây dựng lớp trong Java với nạp chồng (overloading) và kết tập (aggregation)
- Ghi (write), tạo (create) và xóa (delete) tập tin (file) với Python
- Câu lệnh join trong MySQL với Python
- Cài đặt và sử dụng Sublime Text để lập trình C++
- Hướng dẫn sử dụng phần mềm mô phỏng mạch điện tử Proteus
Từ khóa » Toán Tử Or C++
-
Toán Tử Trong C++
-
Toán Tử Logic Trong C++ Và Giá Trị True False
-
Toán Tử Trong C++ - Học Lập Trình C++ Online - Viettuts
-
[Tự Học C++] Toán Tử Logical Trong C++ »
-
Toán Tử Trong C++ | 101 Bài Hướng Dẫn C++ Hay Nhất
-
Toán Tử Trong C - AICurious
-
Các Toán Tử Trong C++ - Freetuts
-
Toán Tử Quan Hệ, Logic, Bitwise, Misc Và độ ưu Tiên Toán Tử Trong C++
-
Toán Tử Trong C++
-
Mệnh đề If-else Và Toán Tử AND Trong C++ | Codelearn
-
Toán Tử Trong C++ - Hoclaptrinh
-
Review Toán Tử Là Gì? Các Toán Tử Trong C, C++ Thường Gặp
-
Học C++/Toán Tử – Wikibooks Tiếng Việt
-
Toán Tử Trong C++, Khái Niệm Và Ví Dụ Minh Họa - Thủ Thuật
-
C/C++ - Các Toán Tử Thông Dụng - Viblo
-
[Lập Trình C++ Cơ Bản] Bài 2: Toán Tử Và Toán Hạng - Viblo
-
Tự Học C++: Các Toán Tử - VnExpress Số Hóa
-
Phép Toán Thao Tác Bit – Wikipedia Tiếng Việt
-
1.10 Độ ưu Tiên Của Các Toán Tử - Khóa Học C++