Chuyển đổi cơ sở 2 thành cơ sở 10 python
Justin Fletcher tham gia chương trình để nói về cách Lực lượng Vũ trụ Hoa Kỳ đang sử dụng phương pháp học sâu với dữ liệu từ kính viễn vọng để theo dõi các vệ tinh, các mảnh vỡ không gian có khả năng gây chết người cũng như xác định và ngăn chặn các vụ va chạm thảm khốc. Trong nghiên cứu của bạn về khoa học máy tính, có lẽ bạn đã được tiếp xúc theo cách này hay cách khác với ý tưởng về số nhị phân. Biểu diễn nhị phân rất quan trọng trong khoa học máy tính vì tất cả các giá trị được lưu trữ trong máy tính đều tồn tại dưới dạng chuỗi các chữ số nhị phân, chuỗi 0 và 1. Nếu không có khả năng chuyển đổi qua lại giữa các biểu diễn thông thường và số nhị phân, chúng ta sẽ cần phải tương tác với máy tính theo những cách rất khó xử Giá trị số nguyên là các mục dữ liệu phổ biến. Chúng được sử dụng trong các chương trình máy tính và tính toán mọi lúc. Chúng ta học về chúng trong lớp toán và tất nhiên biểu diễn chúng bằng hệ thống số thập phân, hoặc cơ số 10. Số thập phân 23310233_{10}23310 và số nhị phân tương ứng của nó 11101001211101001_2111010012 được hiểu tương ứng là Có thể bạn quan tâm2×102+3×101+3×1002\times10^{2} + 3\times10^{1} + 3\times10^{0}2×102+3×101+3 và1×27+1×26+1×25+0×24+1×23+0×22+0×21+1×201\times2^{7} + 1\times2^{6} + 1\times2^ Nhưng làm thế nào chúng ta có thể dễ dàng chuyển đổi các giá trị số nguyên thành số nhị phân?Thuật toán Chia cho 2 giả định rằng chúng ta bắt đầu bằng một số nguyên lớn hơn 0. Một phép lặp đơn giản sau đó liên tục chia số thập phân cho 2 và theo dõi phần còn lại. Phép chia đầu tiên cho 2 cung cấp thông tin về việc giá trị là chẵn hay lẻ. Một giá trị chẵn sẽ có phần còn lại là 0. Nó sẽ có chữ số 0 ở hàng đơn vị. Một giá trị lẻ sẽ có số dư là 1 và sẽ có chữ số 1 ở vị trí hàng đơn vị. Chúng tôi nghĩ về việc xây dựng số nhị phân của mình dưới dạng một chuỗi các chữ số; . Như được hiển thị bên dưới, chúng ta lại thấy thuộc tính đảo ngược báo hiệu rằng ngăn xếp có khả năng là cấu trúc dữ liệu phù hợp để giải quyết vấn đề Mã Python bên dưới triển khai thuật toán Chia cho 2. Hàm Thuật toán chuyển đổi nhị phân có thể dễ dàng được mở rộng để thực hiện chuyển đổi cho bất kỳ cơ sở nào. Trong khoa học máy tính, người ta thường sử dụng một số bảng mã khác nhau. Phổ biến nhất trong số này là nhị phân, bát phân (cơ sở 8) và thập lục phân (cơ sở 16) Số thập phân 233233233 và số bát phân và thập lục phân tương ứng của nó 3518351_{8}3518 và E916E9_{16}E916 được hiểu là 3×82+5×81+1×803\times8^{2} + 5\times8^{1} + 1\times8^{0}3×82+5×81+1 và14×161+9×16014\times16^{1} + 9\times16^{0}14×161+9×160 Hàmconvert_to_binary có thể được sửa đổi để chấp nhận không chỉ giá trị thập phân mà còn là cơ sở cho chuyển đổi dự kiến. Ý tưởng “Chia cho 2” đơn giản được thay thế bằng ý tưởng tổng quát hơn “Chia cho cơ số. ” Một hàm mới có tên là convert_to_base , được hiển thị bên dưới, lấy một số thập phân và bất kỳ cơ số nào trong khoảng từ 2 đến 16 làm tham số. Phần còn lại vẫn được đẩy vào ngăn xếp cho đến khi giá trị được chuyển đổi thành 0. Kỹ thuật xây dựng chuỗi từ trái sang phải tương tự có thể được sử dụng với một thay đổi nhỏ. Các số từ cơ sở 2 đến cơ sở 10 cần tối đa 10 chữ số, do đó, các ký tự chữ số thông thường 0, 1, 2, 3, 4, 5, 6, 7, 8 và 9 hoạt động tốt. Vấn đề xảy ra khi chúng ta vượt ra ngoài cơ sở 10. Chúng ta không còn có thể chỉ đơn giản sử dụng phần còn lại, vì bản thân chúng được biểu diễn dưới dạng số thập phân có hai chữ số. Thay vào đó, chúng ta cần tạo một tập hợp các chữ số có thể được sử dụng để biểu thị những phần còn lại ngoài 9Một giải pháp cho vấn đề này là mở rộng bộ chữ số để bao gồm một số ký tự bảng chữ cái. Ví dụ: hệ thập lục phân sử dụng mười chữ số thập phân cùng với sáu ký tự bảng chữ cái đầu tiên cho 16 chữ số. Để thực hiện điều này, một chuỗi chữ số được tạo để lưu trữ các chữ số ở vị trí tương ứng của chúng. 0 ở vị trí 0, 1 ở vị trí 1, A ở vị trí 10, B ở vị trí 11, v.v. Khi một phần còn lại được loại bỏ khỏi ngăn xếp, nó có thể được sử dụng để lập chỉ mục vào chuỗi chữ số và chữ số kết quả chính xác có thể được thêm vào câu trả lời. Ví dụ: nếu phần còn lại 13 bị xóa khỏi ngăn xếp, chữ số D sẽ được thêm vào chuỗi kết quả |
Bài Viết Liên Quan
Xử lý số liệu bằng python
Nếu bạn bắt đầu tìm hiểu và làm việc dữ liệu dạng bảng trong Python, thì nhiều khả năng bạn sẽ bắt đầu với thư viện tên là Pandas, bởi vì Pandas là ...
Hướng dẫn hmac sha256 javascript
I want to compute the SHA256 based HMAC for some key and a message in front-end using JavaScript. Its easily done in Python like so:import hmac h = hmac.new(bkey, bmessage, ...
Hướng dẫn dùng list indices python
Hàm List index() trong Python trả về chỉ mục thấp nhất trong list mà tại đó obj xuất hiện. Nếu không tìm thấy, phương thức sẽ tạo một exception.Cú phápCú ...
Hướng dẫn dùng .lt python
Đã đăng vào thg 3 8, 2018 3:22 SA 4 phút đọc Sau bài viết trước, chúng ta đã làm quen các câu lệnh cơ bản trong Python. Và ở bài viết này tập trung vào tìm ...
Hướng dẫn dùng 512 simplified trong PHP
Floating point numbers (also known as floats, doubles, or real numbers) can be specified using any of the following syntaxes: Formally as of PHP 7.4.0 (previously, underscores have not been ...
Hướng dẫn dùng timestamp format trong PHP
Blog Tin tức 26/07/2021 03:01Ngày tháng là một phần của cuộc sống hàng ngày, do vậy việc xử lý ngày tháng cực kỳ quan trọng khi bạn xử lý các bài viết và ...
Hướng dẫn python flask admin
Có những lúc chúng tôi muốn phát triển ứng dụng nhưng chúng tôi không muốn bắt đầu từ đầu, vì điều này có vô số khung trên thị trường, tuy nhiên khung ...
Hướng dẫn drupal vs wordpress
Th7 27, 2022 Hai G. 12ít nhất Đọc Chọn CMS phù hợp cho website của bạn là bước rất quan trọng. Nếu bạn đang muốn xây dựng site từ đầu, vậy chắc hẵn bạn ...
Hướng dẫn dùng operator precendence trong PHP
Anonymous ¶18 years ago of course this should be clear, but i think it has to be mentioned espacially:AND is not the same like &&for example:is not the same likethe first thing is(a and b) or cthe ...
Hướng dẫn dùng escaping characters python
Nội dung chínhKý tự đặc biệt (escape sequence) trong python là gìCách sử dụng ký tự đặc biệt trong pythonSử dụng ký tự đặc biệt để xuống dòng khi viết ...
Tai nghe bluetooth thể thao samsung gear iconx 2023
(Techz.vn) Samsung chính thức ra mắt mẫu vòng đeo tay và cặp tai nghe bluetooth hiện đại với mục tiêu chăm ssco sức khỏe người tiêu dùng tốt hơn. Bài viết liên ...
Hướng dẫn dùng php dallas trong PHP
Định nghĩa class trong PHPCác đối tượng trong PHP đều được dựa trên class. Nếu bạn muốn khởi tạo một đối tượng trong PHP, bạn cần phải khai báo class PHP ...
Hướng dẫn python log list
AuthorVinay Sajip Basic Logging Tutorial¶Logging is a means of tracking events that happen when some software runs. The software’s developer adds logging calls to their code to indicate that ...
Hướng dẫn transform: scale css
Trang chủTham khảoCSSCSS3Ví dụ về thuộc tính transform: scale()Thuộc tính transform với giá trị scale()Thuộc tính transform với giá trị scale: Xác định một biến ...
Hướng dẫn dùng usleep trong PHP
Bất kỳ cơ quan nào có thể giải thích cho tôi sự khác biệt giữa sleep()và usleep()trong PHP là gì.Tôi đã hướng dẫn sử dụng các tập lệnh sau để thực hiện ...
Hướng dẫn dùng functiond trong PHP
Hàm là một khái niệm đặc biệt quan trọng trong PHP (cũng như trong bất kỳ ngôn ngữ lập trình nào).Hàm trong PHP là một nhóm code được đặt tên nhằm thực ...
Hướng dẫn dùng format the trong PHP
Bài viết được sự cho phép của tác giả Phạm BìnhChào các bạn,Đây là bài viết tiếp theo của bài Code PHP chuẩn convention với PHP CodeSniffer. Trong bài này, ...
Hướng dẫn dùng objeckt JavaScript
Như các bạn đã biết, Javascript có 5 kiểu dữ liệu Number, String, Boolean, Undefined và Null và còn 1 kiểu khác nữa đó là Object (kiểu dữ liệu phức hợp). ...
Hướng dẫn insert mysql nodejs
Code ví dụ Node.js MySQL – Insert / save dữ liệuGiả sử bạn đã có sẵn database demo với table customer (id, name, address)(Xem lại: Code ví dụ node.js tạo database, tạo ...
Lịch thi đấu icc cup 2023
Trang chủ Bóng đá Thứ Tư, ngày 08/08/2018 00:06 AM (GMT+7) Lịch thi đấu ICC tên đầy đủ là International Champions Cup 2018, quy tụ những ông lớn tại các giải ...