bit32
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Thư viện này cung cấp các hàm để thực hiện các hoạt động bitwise.
Giới hạn số
Thư viện này xử lý các số như là những số 32-bit đã ký; số sẽ được chuyển thành này trước khi được sử dụng (xem hình ảnh bên dưới). Số với số thập phân được tròn lên đến số thập phân gần nhất.

Tóm Tắt
Chức Năng
Trả lại một số sau khi các bit của nó đã được dịch chuyển theo một hướng nào đó bởi một hướng dịch được cho.
Trả lại bitwise VÀ của tất cả các số đã cung cấp.
Trả lại bitwise negation của một số đã được cung cấp.
Trả lại bitwise hoặc tất cả các số đã cung cấp.
Trả lại mộtBoolean biểu tượng cho biết có phải lệnh bitwise và các biểu tượng của nó khác với zero không.
Trả lại bitwise XOR của tất cả các số đã cung cấp.
Trả lại số đã được đổi trong trận.
Trả lại số lượng bit liên tục là số lẻ lắn trong đại diện 32-bit của số đã được bắt đầu từ bit đầu tiên (bit lớn nhất) bên trái.
Trả lại số lượng các ký tự số liên tục là zero trong đại diện 32-bit của số này bắt đầu từ bit đầu tiên (ít đáng nhất) của số này.
Tách một loạt các bit từ một số và trả chúng như một số không ký hiệu.
Trả lại một bản sao của một số với một loạt các bit được thay thế bằng giá trị được cung cấp.
Trả lại một số sau khi các bit của nó đã được quay sang bên trái bởi một số lần nhất định.
Trả lại một số có các bit đã được di chuyển theo một lượng di chuyển nhất định để bên trái.
Trả lại một số sau khi các bit của nó đã được quay về phải bởi một số lần nhất định.
Trả lại một số có các bit đã được di chuyển theo nghĩa đen sang phải bởi một khoảng cách nhất định.
Chức Năng
arshift
Trả lại số x đã dịch chuyển disp bit đến phải. Số disp có thể là bất kỳ số có thể diễn tả. Dịch chuyển âm dương bên trái.
Đây là hoạt động dịch chuyển arithmetic. Các bit rỗ trống ở bên trái được điền bằng bản sao của bit cao hơn trên bên phải. Vacant bit ở bên trái được điền bằng zeros. Đặc biệt, dịch chuyển với giá trị đơn vị đơn vị đơn vị đơn vị
Lợi Nhuận
band
Trả lại bitwise VÀ của tất cả các số đã cung cấp.
Mỗi bit được thử nghiệm chống lại bảng sự thật sau đây:
<tbody><tr><td>0</td><td>0</td><td>0</td></tr><tr><td>1</td><td>0</td><td>0</td></tr><tr><td>0</td><td>1</td><td>0</td></tr><tr><td>1</td><td>1</td><td>1</td></tr></tbody>
Một | B | Thoát |
---|

Tham Số
Lợi Nhuận
bor
Trả lại bitwise hoặc tất cả các số đã cung cấp.
Mỗi bit được thử nghiệm chống lại bảng sự thật sau đây:
<tbody><tr><td>0</td><td>0</td><td>0</td></tr><tr><td>1</td><td>0</td><td>1</td></tr><tr><td>0</td><td>1</td><td>1</td></tr><tr><td>1</td><td>1</td><td>1</td></tr></tbody>
Một | B | Thoát |
---|

Tham Số
Lợi Nhuận
bxor
Trả lại bitwise XOR của tất cả các số đã cung cấp.
Mỗi bit được thử nghiệm chống lại bảng sự thật sau đây:
<tbody><tr><td>0</td><td>0</td><td>0</td></tr><tr><td>1</td><td>0</td><td>1</td></tr><tr><td>0</td><td>1</td><td>1</td></tr><tr><td>1</td><td>1</td><td>0</td></tr></tbody>
Một | B | Thoát |
---|

Tham Số
Lợi Nhuận
lrotate
Trả về số x quay disp bên trái. Số disp có thể là bất kỳ số có thể di chuyển. Đối với bất kỳ địa chỉ di chuyển hợp lệ, mệnh danh sau đây được giữ:
assert(bit32.lrotate(x, disp) == bit32.lrotate(x, disp % 32))
Đặc biệt, di chuyển tiêu cực xoay về phải.
Lợi Nhuận
lshift
Trả lại số x đã dịch chuyển disp bit đến bên trái. Số disp có thể là bất kỳ số đại diện nào. Dịch chuyển âm dương dịch chuyển đến phải. Ở bất kỳ hướng nào, dịch

Đối với những biến đổi tích cực, hàm số sau đây giữ:
assert(bit32.lshift(b, disp) == (b * 2^disp) % 2^32)
Lợi Nhuận
rshift
Trả lại số x đã dịch chuyển disp bit đến phải. Số disp có thể là bất kỳ số có thể diễn tả. Dịch chuyển dương dịch chuyển đến bên trái. Ở bất kỳ hướng nào, dịch chuyể

Đối với những biến đổi tích cực, hàm số sau đây giữ:
assert(bit32.rshift(b, disp) == math.floor(b % 2^32 / 2^disp))
Đây là hoạt động chuyển đổi logic được gọi là chuyển đổi logic.