Ràng buộc phải làm với việc đặt tên cho các thứ (hoặc giá trị) trong một bối cảnh được phân định rõ ràng nhất định. Bài tập là về việc lưu trữ những thứ (hoặc giá trị) ở một số vị trí (một biến). Một nhiệm vụ khác có thể thay thế một giá trị trước đó bằng một giá trị mới. Định giá bao gồm trong việc ràng buộc tất cả các định danh của một văn bản chính thức với một cái gì đó (với một giá trị). Trong toán học, các định danh này thường được gọi là các biến, điều này gây ra sự nhầm lẫn với khái niệm biến (tức là lưu trữ bộ nhớ) trong khoa học máy tính.
Cố gắng cung cấp thêm chi tiết trực quan
Liên kết tên gắn một ý nghĩa cho các định danh trong một số phần (được gọi là phạm vi) của văn bản toán học hoặc lập trình có liên quan. Ý nghĩa này thực sự có thể được coi là một giá trị trong một số miền khi văn bản được diễn giải.
Ví dụ: nếu bạn khai báo foo
là biến số nguyên, giá trị được đính kèm foo
trong phạm vi là biến số nguyên. Một biến số nguyên có thể được nhìn thấy một cách không chính thức một thùng chứa có thể mang một giá trị nguyên, có thể được thay đổi. Bạn cũng có thể xem nó là địa chỉ của một địa điểm trong bộ nhớ nơi nội dung có thể được lưu trữ.
Nhưng nếu bạn khai báo foo
là số nguyên 25, thì trong phạm vi, bất kỳ việc sử dụng nào foo
cũng giống với việc sử dụng 25. Nếu bạn khai báo foo là hằng số nguyên, nó không thể thay đổi và do đó giá trị của nó phải được chỉ định.
Binding đang gắn tên với một số giá trị không thay đổi trong phạm vi của tên. Một ví dụ là một tài liệu pháp lý nói rằng " for the purpose of this document, Mr. Brown, and the Smith family shall be called the beneficiary.
" Phạm vi là tài liệu pháp lý. Và ở mọi nơi trong tài liệu, việc sử dụng từ này beneficiary
có nghĩa là ông Brown và gia đình Smith. Bạn có thể xem nó như một định nghĩa của một thuật ngữ địa phương. Nó có liên quan đến việc đặt tên cho mọi thứ. Binding là về nói, đọc hoặc viết. Nó không phải là về việc thực thi hoặc di chuyển các giá trị xung quanh: tương ứng với việc gán.
Một biến có thể được xem như một đoạn bộ nhớ có thể chứa một giá trị, Khi bạn có một biến, bạn có thể thay đổi giá trị chứa trong biến này chứa trong một phép gán. Nếu foo
bị ràng buộc với (hoặc biểu thị) một biến trong phạm vi hiện tại, bạn có thể gán một giá trị cho foo
, tức là cho biến được biểu thị bởi foo
hoặc đọc giá trị có trong biến đó. Và bạn có thể thay đổi giá trị đó bằng một nhiệm vụ mới.
Vì vậy, ràng buộc là một hoạt động cho biết ý nghĩa của tên trong văn bản của chương trình hoặc của diễn ngôn toán học. Nó là tĩnh, theo nghĩa là văn bản không thay đổi. Nhưng gán là một khái niệm lập trình bao gồm lưu trữ một giá trị trong một biến, tức là một thùng chứa, thường là một vị trí trong bộ nhớ. Đây là một khái niệm động liên quan đến cách các giá trị (biểu diễn) được lưu trữ trong bộ nhớ, thay đổi khi chương trình tiến triển.
Lưu ý rằng một biến có thể tồn tại độc lập với bất kỳ tên nào mà nó có thể bị ràng buộc. Đây là trường hợp cho một phần tử của một mảng, lấy một ví dụ đơn giản.
Trong các bối cảnh khác nhau, người ta có thể xem xét các biểu thức hoặc văn bản sử dụng tên chưa được xác định. Ví dụ: bạn có thể viết
là biểu thức số học. Sau đó, bạn có thể định giá các biến bằng cách liên kết một môi trường (bạn có thể đọc khoảng một phạm vi) trong đó các biến và được liên kết với một số giá trị, ví dụ 3 và 12, và quan tâm đến giá trị được thực hiện bởi áp lực. Một định giá là một liên kết của một tập hợp các tên, mỗi tên có một giá trị cụ thể. Định giá tên được sử dụng nhiều hơn trong toán học chính thức, trong khi assigment là một khái niệm lập trình.(a2−b2)/(a−b)ab
binding
. Khi biến bị ràng buộc với một số giá trị trong khi thực hiện chương trình, chúng tôi nóiit was assigned
và chúng tôi muốn nóivaluated
trong bối cảnh chính thức / cs thay thế. Tôi chỉ bắt đầu nhìn vào các biến miễn phí / ràng buộc ngày hôm nay và bối rối. Nó giống như bối cảnh chính thức / cs, tuy nhiên, thuật ngữ trình biên dịch / máy tính engeneer được sử dụng?