1. Chú ý: Các bạn nên tham khảo Nội quy trước khi viết bài (click vào liên kết bên dưới).
    * Nội quy và Thông báo diễn đàn CNCProVN.com
    * Nếu bạn thấy hứng thú với bài viết. Hãy dùng chức năng Share to facebook để chia sẻ bài viết lên facebook.

          
Kết quả 1 đến 2 của 2

Chủ đề: Một vài khái niệm cơ bản khi làm quen với Arduino #1

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #2
    Học việc
    Ngày tham gia
    Aug 2016
    Bài viết
    5
    Cám ơn
    0
    Được cám ơn 7 lần
           ở 5 bài viết
    Chuyển đổi giữa các hệ cơ số.

    Để chuyển đổi giữa các hệ cơ số khác nhai khi lập trình ứng dụng với Arduino hoặc các vxl khác, thông thường các ngôn ngữ lập trình đều có những hàm riêng để làm việc này. Giúp cho người lập trình có thể chuyển đổi anh chóng & dễ dàng các kiểu dữ liệu. Nhưng việc tìm hiểu cách thức chuyển đổi qua lại giữa các hệ cơ số cũng không kém phần quan trọng.
    Như bài viết trên, mình đã trình bày sơ về việc chuyển từ kiểu số nhị phân qua các kiểu số khác.

    Ở bài viết này mình sẽ trình này sơ cách chuyển:

    Kiểu số thập phân sang kiểu số nhị phân
    Để làm điều này.. ta thực hiện lần lượt các phép chư cho 2 (cơ số nhị phận), ghi nhớ phần dư và kết quả, lại lấy kết quả chia cho 2, ghi nhớ phần dư và kết quả.. tiếp tục cho đến khi kết quả nhỏ hơn (<) 2 hoặc phép chia cho kết quả là 0. Sau đó ghép các số dư theo thứ tự lần lượt từ phải sang trái sẽ ra kết quả.
    Như ở ví dụ trên, giờ ta làm ngược lại đổi kiểu số thập phân 1110 sang kiểu số nhị phân xxxx2
    Như đã trình bày, ta tiến hành:
    1. 11 / 2 = 5 dư 1
    2. 5 / 2 = 2 dư 1
    3. 2 / 2 = 1 dư 0
    4. 1 / 2 = 0 dư 1

    Vậy kết quả 1110 sau khi đổi qua hệ nhị phân sẽ là 10112

    Kiểu số thập phân sang kiểu số bát phân
    Để làm điều này.. ta thực hiện lần lượt các phép chư cho 8 (cơ số bát phân), ghi nhớ phần dư và kết quả, lại lấy kết quả chia cho 8, ghi nhớ phần dư và kết quả.. tiếp tục cho đến khi kết quả nhỏ hơn (<) 8 hoặc phép chia cho kết quả là 0. Sau đó ghép các số dư theo thứ tự lần lượt từ phải sang trái sẽ ra kết quả.
    Như ở ví dụ trên, giờ ta làm ngược lại đổi kiểu số thập phân 6910 sang kiểu số bát phân xxxx8
    Như đã trình bày, ta tiến hành:
    1. 69 / 8 = 8 dư 5
    2. 8 / 8 = 1 dư 0
    3. 1 / 8 = 0 dư 1

    Vậy kết quả 6910 sau khi đổi qua hệ bát phân sẽ là 1058

    Kiểu số thập phân sang kiểu số thập lục phân
    Để làm điều này.. ta thực hiện lần lượt các phép chư cho 16 (cơ số thập lục phận), ghi nhớ phần dư và kết quả, lại lấy kết quả chia cho 16, ghi nhớ phần dư và kết quả.. tiếp tục cho đến khi kết quả nhỏ hơn (<) 16 hoặc phép chia cho kết quả là 0. Sau đó ghép các số dư theo thứ tự lần lượt từ phải sang trái sẽ ra kết quả.
    Như ở ví dụ trên, giờ ta làm ngược lại đổi kiểu số thập phân 26110 sang kiểu số thập lục phân xxxx16
    Như đã trình bày, ta tiến hành:
    1. 261 / 16 = 16 dư 5
    2. 16 / 16 = 1 dư 0
    3. 1 / 16 = 0 dư 1

    Vậy kết quả 26110 sau khi đổi qua hệ thập lục phân sẽ là 10516




    Chúng ta làm quen bảng số sau

    Decimal Binary ..Hex.. .Octal. ---- Decimal Binary ..Hex.. .Octal.
    0 0000 0 0 8 1000 8
    1 0001 1 1 9 1001 9 11
    2 0010 2 2 10 1010 A 12
    3 0011 3 3 11 1011 B 13
    4 0100 4 4 12 1100 C 14
    5 0101 5 5 13 1101 D 15
    6 0110 6 6 14 1110 E 16
    7 0111 7 7 15 1111 F 17

    Kiểu số nhị phân sang kiểu số thập lục phân
    Để làm điều này ta tiến hành chia nhóm số nhị phân thành các nhóm nhỏ, mỗi nhóm gồm 4 ký số, từ phải qua trái. Nếu nhóm cuối không đủ 4 ký số thì ta thêm vào trái các ký số 0 cho đủ. Sau đó quy đổi trực tiếp từng nhóm nhỏ ra thành thập lục phân theo bảng trên, rồi lại ghép các kết quả thập lục phân đã tìm được. Ví dụ đổi kiểu số nhị phận 10010011101102 thành số thập lục phân xxx16. Ta tiến hành
    Chia nhóm 10010011101102 thành 1-0010-0111-01102 --> 0001-0010-0111-01102
    Quy đổi
    0110 => 6
    0111 => 7
    0010 => 2
    0001 => 1
    Kết quả là 127616

    Kiểu số nhị phân sang kiểu số bát phân
    Để làm điều này ta tiến hành chia nhóm số nhị phân thành các nhóm nhỏ, mỗi nhóm gồm 3 ký số, từ phải qua trái. Nếu nhóm cuối không đủ 3 ký số thì ta thêm vào trái các ký số 0 cho đủ. Sau đó quy đổi trực tiếp từng nhóm nhỏ ra thành bát phân theo bảng trên, rồi lại ghép các kết quả thập lục phân đã tìm được. Ví dụ đổi kiểu số nhị phận 10010011101102 thành số bát phân xxx8. Ta tiến hành
    Chia nhóm 10010011101102 thành 1-001-001-110-1102 --> 001-001-001-110-1102
    Quy đổi
    110 => 6
    110 => 6
    001 => 1
    001 => 1
    001 => 1
    Kết quả là 111668

  2. Thành viên đã cám ơn Arduino cho bài viết hữu ích này:


Các Chủ đề tương tự

  1. Trả lời: 33
    Bài viết cuối: 21-05-2018, 11:58:20 PM
  2. G-Code căn bản - Khái niệm
    Bởi CKD trong diễn đàn Trao đổi kinh nghiệm
    Trả lời: 13
    Bài viết cuối: 02-11-2016, 08:32:57 AM
  3. Một vài khái niệm cơ bản khi làm quen với Arduino #2
    Bởi Arduino trong diễn đàn Arduino
    Trả lời: 0
    Bài viết cuối: 07-08-2016, 04:53:02 PM
  4. Trả lời: 5
    Bài viết cuối: 06-01-2015, 01:27:36 PM

Tag của Chủ đề này

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •