Kết nối qua MCP →

Nhập phép tính

Công thức

Quảng cáo

Kết quả

A NOR B = ~(A | B)
241
8-bit unsigned · binary 11110001
Giá trị A 12
Giá trị B 10
A | B (OR) 14
NOR (thập phân) 241
NOR (nhị phân) 11110001

Máy tính NOR bit là gì?

Công cụ này tính phép NOR bit của hai số nguyên theo công thức \(\text{kết quả} = \sim(\text{A} \mathbin{|} \text{B})\). NOR ("NOT OR") là một phép logic nền tảng: trước tiên nó thực hiện phép OR trên từng cặp bit tương ứng, sau đó đảo ngược kết quả. Một bit đầu ra chỉ bằng 1 khi cả hai bit đầu vào đều bằng 0. NOR là cổng logic đầy đủ về chức năng — mọi cổng logic khác đều có thể được dựng nên chỉ từ các cổng NOR, đây chính là lý do NOR cực kỳ quan trọng trong điện tử số.

Cách sử dụng

Nhập hai số nguyên (A và B) rồi chọn độ rộng bit (8, 16, 32 hoặc 64 bit). Máy tính sẽ trả về kết quả NOR được hiểu là một giá trị không dấu ở độ rộng đó, cùng với giá trị OR trung gian và dạng biểu diễn nhị phân. Chọn độ rộng bit nhỏ hơn đơn giản là che bớt các bit cao, rất tiện khi bạn muốn mô phỏng các thanh ghi có độ rộng cố định.

Giải thích công thức

Phép OR của hai bit cho ra 1 nếu một trong hai bit bằng 1. NOR đảo ngược kết quả đó, nên mỗi bit tuân theo bảng chân trị sau: 0 NOR 0 = 1, 0 NOR 1 = 0, 1 NOR 0 = 0, 1 NOR 1 = 0. Công thức đầy đủ là $$\text{NOR} = \sim\left(\text{A} \mathbin{|} \text{B}\right) \mathbin{\&} \left(2^{\text{Bits}} - 1\right)$$ Vì phép đảo thuần (\(\sim\)) sẽ bật tất cả các bit cao, ta phải che kết quả bằng \(2^n - 1\) để giữ nó nằm trong độ rộng bit không dấu đã chọn.

Hai số nhị phân 8 bit kết hợp bằng NOR tạo ra hàng kết quả OR đảo
NOR theo bit so sánh từng cặp bit: bit đầu ra bằng 1 chỉ khi cả hai bit đầu vào đều bằng 0.

Ví dụ minh họa

Giả sử A = 12 (nhị phân 1100) và B = 10 (nhị phân 1010) ở độ rộng 8 bit. $$\text{A} \mathbin{|} \text{B} = 1110 = 14$$ Đảo ngược trong phạm vi 8 bit cho ra \(11110001 = 241\). Vậy \(12 \text{ NOR } 10 = \mathbf{241}\) ở độ rộng 8 bit.

Lưới bảng chân lý NOR hai đầu vào với các bit đầu vào và bit đầu ra
Bảng chân lý NOR: đầu ra bằng 1 chỉ với cặp đầu vào 0,0.

Bảng Sự Thật NOR và Mặt Nạ Chiều Rộng Bit

Phép toán NOR theo bit kết hợp hai toán hạng từng bit một. Đối với mỗi cặp bit, nó trước tiên tính toán OR, sau đó đảo ngược kết quả. Nói cách khác, một bit đầu ra là 1 chỉ khi cả hai bit đầu vào đều là 0; trong mọi trường hợp khác, bit đầu ra là 0. Đây là phủ định của OR, do đó có tên NOR (NOT-OR).

Bảng sự thật NOR một bit: kết quả = ~(A | B)
A B A | B NOR = ~(A | B)
0 0 0 1
0 1 1 0
1 0 1 0
1 1 1 0

Bởi vì bước NOT đảo ngược mọi bit, kết quả phụ thuộc vào chiều rộng bit được chọn. Sau khi OR-ing các toán hạng và đảo ngược, giá trị được che phủ bằng chiều rộng \(n\) sử dụng \(2^{n}-1\), để chỉ giữ lại \(n\) bit thấp nhất. Mặt nạ cho mỗi chiều rộng được hỗ trợ được hiển thị dưới đây.

Chiều rộng bit và mặt nạ không dấu của chúng \(2^{n}-1\)
Chiều rộng bit \(n\) Mặt nạ \(2^{n}-1\) (thập phân) Giá trị không dấu lớn nhất
8 255 255
16 65535 65535
32 4294967295 4294967295
64 18446744073709551615 18446744073709551615

Ví dụ, với \(A = 12\) và \(B = 10\) ở chiều rộng 8 bit: \(12 | 10 = 14\), và \(\sim 14\) được che phủ thành 8 bit cho kết quả 241. Kết quả OR trung gian \(12 | 10 = \) 14 có thể được kiểm tra độc lập.

Các Thuật Ngữ Chính

NOR theo bit
Một phép toán tạo ra một kết quả mà mọi bit của nó là 1 chỉ khi các bit tương ứng của cả hai toán hạng đều là 0. Nó được định nghĩa là phủ định của kết quả OR: \(\text{NOR} = \sim(A | B)\).
OR (theo bit)
Một phép toán đặt mỗi bit kết quả thành 1 nếu ít nhất một trong hai bit đầu vào tương ứng là 1, và thành 0 chỉ khi cả hai đều là 0.
NOT / đảo ngược (~)
Một phép toán một ngôi đảo ngược mọi bit: mỗi 0 trở thành 1 và mỗi 1 trở thành 0. Trong NOR, nó được áp dụng cho kết quả OR, và hiệu ứng của nó bị giới hạn bởi chiều rộng bit được chọn.
Chiều rộng bit
Số lượng bit được sử dụng để biểu diễn một giá trị (8, 16, 32 hoặc 64 ở đây). Nó xác định có bao nhiêu bit mà kết quả đảo ngược giữ lại và do đó phạm vi số của đầu ra.
Che phủ
Sử dụng AND theo bit với một giá trị như \(2^{n}-1\) để giữ lại chỉ \(n\) bit thấp nhất và loại bỏ các bit cao hơn. Điều này giới hạn kết quả NOR trong chiều rộng được chọn.
Số nguyên không dấu
Một biểu diễn số nguyên không có bit dấu, vì vậy tất cả các mẫu bit đại diện cho các giá trị không âm từ 0 đến \(2^{n}-1\). Kết quả NOR được báo cáo dưới dạng một giá trị không dấu.
Cổng hoàn chỉnh về mặt chức năng (cổng phổ dụng)
Một cổng mà từ đó có thể xây dựng bất kỳ hàm Boolean nào chỉ sử dụng các bản sao của chính nó. NOR hoàn chỉnh về mặt chức năng: AND, OR và NOT đều có thể được xây dựng từ các cổng NOR riêng lẻ, đó là lý do nó được gọi là một cổng phổ dụng.

Câu hỏi thường gặp

Tại sao kết quả thay đổi theo độ rộng bit? Phép đảo lật toàn bộ các bit, nên những bit 1 ở đầu phụ thuộc vào việc số đó được biểu diễn bằng bao nhiêu bit. Độ rộng càng lớn thì kết quả không dấu càng lớn.

Tôi có thể dùng số âm không? Các giá trị nhập vào được xử lý như số nguyên; để có kết quả rõ ràng, hãy dùng các số nguyên không âm nằm trong phạm vi độ rộng đã chọn.

NOR có giống NAND không? Không. NAND là \(\sim(\text{A} \mathbin{\&} \text{B})\) (NOT AND), còn NOR là \(\sim(\text{A} \mathbin{|} \text{B})\) (NOT OR). Cả hai đều là cổng vạn năng nhưng cho ra kết quả khác nhau.

Cập nhật lần cuối: