Trong bài viết này mình sẽ hướng dẫn các bạn cách chuyển đổi số nhị phân sang thập phân. Ở bài trước mình có hướng dẫn cách đổi thập phân sang nhị phân, các bạn có thể xem lại nhé.
Giả sử ta có số nhị phân 10101, để chuyển sang thập phân ta có thể tính như sau:
1 * 2^0 = 1 0 * 2^1 = 0 1 * 2^2 = 4 0 * 2^3 = 0 1 * 2^4 = 16
Kết quả: Thập phân của 10101 = 1 + 0 + 4 + 0 + 16 = 21.
Chuyển đổi nhị phân sang thập phân trong C#
Như ta biết thì để chuyển đổi từ nhị phân sang thập phân, ta cần xác định được có bao nhiêu chữ số trong nhị phân. Điều đó tương ứng với số lũy thừa ta cần tính.
Bài viết này được đăng tại [kiso.vn]
Trong ví dụ này, mình trích xuất các chữ số của số nhị phân bắt đầu từ bên phải bằng toán tử Mod. Sau đó nhân các chữ số với cơ số thích hợp, tức là lũy thừa của 2 và cộng vào kết quả của biến decimalValue.
Cuối cùng, giá trị của biến decimalValue chính là giá trị thập phân của số nhị phân sau khi chuyển đổi.
using System; using System.Linq; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao so nhi phan can chuyen doi: "); int binaryNumber = int.Parse(Console.ReadLine()); int decimalValue = 0; int base1 = 1; while (binaryNumber > 0) { int reminder = binaryNumber % 10; binaryNumber = binaryNumber / 10; decimalValue += reminder * base1; base1 = base1 * 2; } Console.Write($"So thap phan sau khi chuyen doi: {decimalValue} "); Console.Write("n ---- Chuong trinh nay duoc dang tai Kiso.vn ---- n"); Console.ReadKey(); } } }
Kết quả:
Chuyển đổi nhị phân sang thập phân sử dụng phương thức Convert.ToInt32()
Trong ví dụ này mình sẽ sử dụng phương thức Convert.Toint32()
để thực hiện chuyển đổi số nhị phân sang thập phân. Đây là phương thức có sẵn trong C#, vì vậy sẽ ngắn gọn và dễ sử dụng hơn.
Hàm bao gồm hai tham số, tham số thứ nhất là giá trị của số nhị phân cần chuyển đổi. Giá trị thứ hai chính là cơ số chuyển đổi, trong trường hợp này sẽ là 2.
using System; using System.Linq; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao so can chuyen doi: "); int binaryNumber = int.Parse(Console.ReadLine()); int decimalValue = Convert.ToInt32(binaryNumber.ToString(), 2); Console.Write($"So thap phan sau khi chuyen doi: {decimalValue} "); Console.Write("n ---- Chuong trinh nay duoc dang tai Kiso.vn ---- n"); Console.ReadKey(); } } }
Kết quả:
Như vậy là chúng ta đã thực hiện xong chương trình chuyển đổi từ số nhị phân sang số thập phân bằng hai cách khác nhau. Các bạn hãy luyện tập thật nhiều để sử dụng nó một cách thành thạo nhé, chúc các bạn thành công !!!
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chínhChuyển đổi nhị phân sang thập phân trong C#Chuyển...
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chínhChuyển đổi nhị phân sang thập phân trong C#Chuyển đổi nhị phân sang thập phân sử dụng phương thức Convert.ToInt32()1. Khái niệm CSF: CSF (ConfigServer & Firewall) là một bộ ứng dụng hoạt...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chínhChuyển đổi nhị phân sang thập phân trong C#Chuyển đổi nhị phân sang thập phân sử dụng phương thức Convert.ToInt32()V. Phân tích và khai thác các lỗ hổng Directory traversal (tiếp) 5. Bypass...
Directory traversal vulnerabilities (phần 3)
Nội dung chínhChuyển đổi nhị phân sang thập phân trong C#Chuyển đổi nhị phân sang thập phân sử dụng phương thức Convert.ToInt32()V. Phân tích và khai thác các lỗ hổng Directory traversal 1. Lỗ hổng...
Directory traversal vulnerabilities (phần 2)
Nội dung chínhChuyển đổi nhị phân sang thập phân trong C#Chuyển đổi nhị phân sang thập phân sử dụng phương thức Convert.ToInt32()III. Vì sao lỗ hổng Directory traversal xuất hiện? Với mỗi ngôn ngữ lập...