<!DOCTYPE html>
<html> <head> <title>Bitwise Calculator</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> /* Style for the calculator buttons */ button { font-size: 1.5rem; margin: 0.5rem; padding: 0.5rem; border: 1px solid #000; background-color: #fff; border-radius: 0.25rem; cursor: pointer; min-width: 3rem; } /* Style for the calculator screen */ input[type=text] { font-size: 2rem; margin: 0.5rem; padding: 0.5rem; border: 1px solid #000; border-radius: 0.25rem; text-align: right; width: 100%; } </style> </head> <body> <div> <!-- Calculator screen --> <input type="text" id="result" disabled> <!-- Calculator buttons --> <button onclick="append('0')">0</button> <button onclick="append('1')">1</button> <button onclick="operate('&')">AND</button> <button onclick="operate('|')">OR</button> <button onclick="operate('^')">XOR</button> <button onclick="operate('<<')">Left Shift</button> <button onclick="operate('>>')">Right Shift</button> <button onclick="clearAll()">Clear</button> </div> <script> // Initialize the calculator screen with 0 document.getElementById("result").value = 0; // Append a digit to the calculator screen function append(digit) { // Get the current value of the calculator screen var currentValue = document.getElementById("result").value; // If the current value is 0, replace it with the new digit if (currentValue === "0") { document.getElementById("result").value = digit; } else { // Otherwise, append the new digit to the current value document.getElementById("result").value += digit; } } // Perform a bitwise operation on the current value and the new value entered by the user function operate(operator) { // Get the current value of the calculator screen var currentValue = parseInt(document.getElementById("result").value, 2); // Get the new value entered by the user var newValue = parseInt(prompt("Enter a binary value:"), 2); // Perform the bitwise operation based on the operator chosen by the user switch (operator) { case "&": document.getElementById("result").value = (currentValue & newValue).toString(2); break; case "|": document.getElementById("result").value = (currentValue | newValue).toString(2); break; case "^": document.getElementById("result").value = (currentValue ^ newValue).toString(2); break; case "<<": document.getElementById("result").value = (currentValue << newValue).toString(2); break; case ">>": document.getElementById("result").value = (currentValue >> newValue).toString(2); break; } } // Clear the calculator screen function clearAll() { document.getElementById("result").value = 0; } </script> </body> </html>
Comments
Post a Comment
sunil191280@gmail.com