Script Batch - Các phép toán

Xin chào các bạn future programmers! Hôm nay, chúng ta sẽ khám phá thế giới thú vị của các phép toán trong Script Batch. Đừng lo lắng nếu bạn chưa từng viết một dòng mã trước đây - tôi sẽ là người bạn thân thiện dẫn đường cho bạn trong cuộc phiêu lưu này. Cuối bài học này, bạn sẽ manipulates dữ liệu như một chuyên gia!

Batch Script - Operators

Các phép toán số học

Hãy bắt đầu với điều quen thuộc: toán học! Các phép toán số học trong Script Batch hoạt động giống như những gì bạn đã học ở trường. Chúng giúp chúng ta thực hiện các phép toán trong script của mình.

Dưới đây là bảng các phép toán số học chúng ta sẽ sử dụng:

Phép toán Mô tả Ví dụ
+ Cộng 5 + 3
- Trừ 7 - 2
* Nhân 4 * 6
/ Chia 8 / 2
% Modulus (Dư số) 9 % 4

Bây giờ, hãy xem các phép toán này trong hành động với một số ví dụ mã:

@echo off
set /a result=5+3
echo 5 + 3 = %result%

set /a result=7-2
echo 7 - 2 = %result%

set /a result=4*6
echo 4 * 6 = %result%

set /a result=8/2
echo 8 / 2 = %result%

set /a result=9%%4
echo 9 %% 4 = %result%

Khi bạn chạy script này, bạn sẽ thấy kết quả của mỗi phép toán. Lệnh set /a cho biết chúng ta đang thực hiện phép toán. Lưu ý cách chúng ta sử dụng %% cho phép toán modulus trong script - đó là vì % có một ý nghĩa đặc biệt trong Batch, vì vậy chúng ta cần escape nó bằng một % khác.

Các phép toán quan hệ

Tiếp theo, chúng ta có các phép toán quan hệ. Đây là những so sánh mà bạn thực hiện hàng ngày: Điều này có lớn hơn điều kia không? Hai điều này có bằng nhau không? Hãy nhìn vào các tùy chọn của chúng ta:

Phép toán Mô tả Ví dụ
EQU Bằng 5 EQU 5
NEQ Không bằng 4 NEQ 5
LSS Nhỏ hơn 3 LSS 4
LEQ Nhỏ hơn hoặc bằng 3 LEQ 3
GTR Lớn hơn 5 GTR 4
GEQ Lớn hơn hoặc bằng 5 GEQ 5

Dưới đây là một script sử dụng các phép toán này:

@echo off
set num1=5
set num2=3

if %num1% EQU %num2% (
echo The numbers are equal
) else if %num1% GTR %num2% (
echo %num1% is greater than %num2%
) else (
echo %num1% is less than %num2%
)

Script này so sánh num1num2, sau đó cho chúng ta biết mối quan hệ của chúng. Chạy nó và xem会发生什么!

Các phép toán logic

Các phép toán logic giúp chúng ta kết hợp các điều kiện. Hãy nghĩ của chúng như "and," "or," và "not" trong ngôn ngữ hàng ngày của bạn.

Phép toán Mô tả Ví dụ
AND Logic AND condition1 AND condition2
OR Logic OR condition1 OR condition2
NOT Logic NOT NOT condition

Hãy sử dụng chúng trong một script:

@echo off
set age=25
set hasLicense=true

if %age% GEQ 18 (
if "%hasLicense%"=="true" (
echo You can drive a car
) else (
echo You're old enough, but you need a license
)
) else (
echo You're too young to drive
)

Script này kiểm tra xem ai đó có đủ tuổi để lái xe và có bằng lái không. Nó giống như các điều kiện bạn kiểm tra trước khi giao chìa khóa xe của bạn!

Các phép toán gán

Các phép toán gán là cách chúng ta cung cấp giá trị cho các biến. Trong Batch, chúng ta chủ yếu sử dụng lệnh set cho điều này.

@echo off
set name=John
echo My name is %name%

set /a number=10
set /a number+=5
echo Number is now %number%

Ở đây, chúng ta gán tên "John" cho biến name, và sau đó chúng ta sử dụng /a để thực hiện phép toán gán với number.

Các phép toán bitwise

Cuối cùng, chúng ta có các phép toán bitwise. Những phép toán này hoạt động trên các biểu diễn nhị phân của số. Chúng hơi phức tạp, nhưng hãy cùng nhìn qua:

Phép toán Mô tả Ví dụ
& Bitwise AND 5 & 3
| Bitwise OR 5 | 3
^ Bitwise XOR 5 ^ 3

Dưới đây là một ví dụ đơn giản:

@echo off
set /a result=5&3
echo 5 & 3 = %result%

set /a result=5|3
echo 5 | 3 = %result%

set /a result=5^3
echo 5 ^ 3 = %result%

Các phép toán này hoạt động trên các biểu diễn nhị phân (base-2) của 5 (101) và 3 (011).

Và thế là xong! Chúng ta đã bao gồm tất cả các phép toán chính trong Script Batch. Nhớ rằng, chìa khóa để thành thạo chúng là thực hành. Thử viết các script của riêng bạn, thử nghiệm với các phép toán khác nhau, và đừng sợ phạm lỗi - đó là cách chúng ta học!

Trong những năm dạy học của mình, tôi đã thấy rằng những học sinh xuất sắc nhất là những người không sợ chơi với mã. Vậy, hãy tiếp tục tò mò và vui vẻ với Script Batch. Trước khi bạn biết, bạn sẽ viết các script phức tạp và gây ấn tượng với mọi người với kỹ năng lập trình của bạn!

Credits: Image by storyset