Constant folding là gì?

Noun Programming

Constant folding là một kỹ thuật tối ưu hóa (optimization) giúp loại bỏ các biểu thức (expression) tính toán một giá trị đã có thể được xác định trước khi thực thi mã. Đây thường là các phép tính chỉ tham chiếu (reference) các giá trị không đổi hoặc các biểu thức tham chiếu đến các biến (value) mà giá trị của nó là hằng số (constant).

Ví dụ, hãy xem xét câu lệnh:


number =  320 * 200 * 32;

Hầu hết các trình biên dịch (compiler) sẽ không thực sự tạo ra hai lệnh (instruction) nhân. Thay vào đó, chúng xác định các cấu trúc (construct) như những cấu trúc này và thay thế các giá trị đã tính (trong trường hợp này là 2048000). Bằng cách này, mã sẽ được thay thế bằng:


number = 2048000;

Constant folding có thể áp dụng cho số. Nối (concatenation) string literal có thể được constant folding. Mã như "abc" + "def" có thể được thay thế bằng "abcdef".

Learning English Everyday