Số 1 ac trong hệ hexa có giá trị

Đối với mỗi lập trình viên, hệ cơ số thập lục phân (hay còn gọi là hệ 16) là một khái niệm quen thuộc và không kém phần quan trọng. Trong bài viết này, tác giả sẽ cùng các bạn tìm hiểu về hệ cơ số 16, cũng như cách chuyển đổi từ các hệ cơ số khác qua hệ cơ số này và cài đặt chúng bằng ngôn ngữ lập trình.

Lịch sử ra đời

Hệ cơ số thập lục phân hiện nay được công ty IBM giới thiệu với thế giới điện toán vào năm 1963. Tiền thân của hệ thập lục phân là hệ thống sử dụng trong máy tính Bendix G-15. Hệ thống này gồm các kí số từ 0 đến 9, và kí tự từ A đến F.

Tổng quan về hệ cơ số thập lục phân

Hệ thập lục phân tên tiếng anh là Hexadecimal, hay còn gọi là hệ 16, là một hệ đếm có 16 kí số 0 đến 9 và A đến F (không phân biệt chữ hoa và chữ thường), với quy tắc:

  • A = 10
  • B = 11
  • C = 12
  • D = 13
  • E = 14
  • F = 15

Chuyển đổi các hệ đếm qua hệ thập lục

Hệ thập phân chuyển qua hệ thập lục phân

+—————————————+ +—————————————+ | | | | | DECIMAL | → | HEXADECIMAL | | | | | +—————————————+ +—————————————+

Giải thuật

  • Bước 1: Thực hiện phép chia nguyên của số thập phân cần chuyển cho 16 và ghi nhớ lại kết quả dư.
  • Bước 2: Nếu thương số của phép chia khác 0, thì tiếp tục lặp lại bước 1. Ngược lại chuyển qua bước 3.
  • Bước 3: Ghi ngược các số dư theo thứ tự ngược lại.

Ví dụ

Ở đây tôi sẽ thực hiện một ví dụ chuyển số : 923(10) = ?(16)

  • Lần 1: 923/16 được 57 dư 11 (tương đương với B trong hexa)
  • Lần 2: 57/16 được 3 dư 9
  • Lần 3: 3/16 được 0 dư 3 và dừng lại.
  • Viết các số dư theo thứ tự ngược lại, và ta được:

Sơ đồ thực hiện

Số 1 ac trong hệ hexa có giá trị

Hệ nhị phân chuyển qua hệ thập lục phân

+————————————+ +—————————————+ | | | | | BINARY | → | HEXADECIMAL | | | | | +————————————+ +—————————————+

Giải thuật

  • Bước 1: Nhóm 4 bits từ phía ngoài cùng bên phải của số nhị phân.
  • Bước 2: Chuyển đổi mỗi nhóm trên sang số thập lục tương ứng theo bảng dưới đây:
HEX BIN
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111

Ví dụ

Thực hiện chuyển số nhị phân: 110101101010111001101010(2) = ?(16)

  • Bước 1: Nhóm lần lượt 4 bit từ phải sáng trái ta được:
    • 1101 0110 1010 1110 0110 1010
  • Bước 2: chuyển mỗi nhóm 4 bits sang số thập lục phân ta được kết quả:
    • 1101 0110 1010 1110 0110 1010
         D    6    A    E    6    A

Vậy ta được 110101101010111001101010(2) = D6AE6A(16)

Hệ đếm thập lục trong C/C++

Trong C/C++ kí tự "0x" được sử dụng làm tiền tố cho các số thập lục phân, chẳng hạn "0x5A3". Số không (0) dẫn đầu được dùng để bộ thanh lọc mã (parser) có thể trực tiếp nhận biết một con số, trong khi chữ "x" đại biểu cho chữ hexadecimal (thập lục phân). Chữ "x" trong tiền tố "0x" có thể được viết hoa (0X) hoặc viết thường (0x), song thường thấy được viết thường.

Chúng ta có thể gán giá trị cho biến ở thệ thập lục phân như sau: int a = 0x5a3;

Và xuất ra màn hình giá trị của biến a theo hệ thập lục phân: printf("0x%x", a);

Tương tự xuất ra màn hình theo kiểu hệ thập phân: printf("%d", a);

Cài đặt thuật toán chuyển đổi

Trên cơ sở giải thuật ở trên, tôi tiến hành cài đặt hàm ConvertDecToHex với hai tham số là n kiểu int, và des kiểu char* để chuyển đổi từ hệ thập phân sang hệ thập lục phân.

Cài đặt hàm ConvertDecToHex:

void ConvertDecToHex(int n, char* des) { int remember; int i = 0; while (n != 0) { remember = n % 16; n /= 16; switch (remember) { case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: des[i] = remember + '0'; break; case 10: des[i] = 'a'; break; case 11: des[i] = 'b'; break; case 12: des[i] = 'c'; break; case 13: des[i] = 'd'; break; case 14: des[i] = 'e'; break; case 15: des[i] = 'f'; break; default: break; } i++; } des[i] = '\0'; for (int count = 0; count < i/2; count++) { char temp = des[count]; des[count] = des[i - count - 1]; des[i - count - 1] = temp; } }

Hiện thực hàm main:

int main() { char *hex = new char[10]; ConvertDecToHex(23524, hex); std::cout << hex << std::endl; return 0; }

  • lý thuyết
  • trắc nghiệm
  • hỏi đáp
  • bài tập sgk

Số 1AC6 trong hệ hexa có giá trị trong hệ thập phân nào ?

A.36     B.212      C.21          D.428

Các câu hỏi tương tự

Số 1 ac trong hệ hexa có giá trị

  • Số 1 ac trong hệ hexa có giá trị

    Số 1Ac16 Trong Hệ Hexa Có Giá Trị Bao Nhiêu. admin 21/04/2022. Bạn đã xem bạn dạng rút gọn của tài liệu. Coi và cài ngay bạn dạng đầy đủ của tài liệu tại ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    12 thg 5, 2022 · Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là: A 42810 B 42610 C 42710 D 42510. Hỏi lúc: 2 tháng trước. Trả lời: 0. Lượt xem: 103.

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    10 thg 5, 2017 · Câu 8: Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là : A. 42510. B. 42610. C. 42710. D. 42810. Câu 9: Số 2510 được biểu diễn trong ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là : (Chỉ được chọn 1 đáp án) A. 42610 B. 42510 42810 D. 42710 câu hỏi 3365789 - hoidap247.com.

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    6 thg 4, 2022 · Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là : (Chỉ được chọn 1 đáp án) A. 42610 B. 42510 42810 D. 42710 câu hỏi 3365789 - hoidap247.

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Biết các hệ đếm cơ số 2, 10, 16 trong biểu diễn thông tin. ... VDT1 Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là : A. 42510. B. 42610. C. 42710

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Môn Tin Học Lớp 10 Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân nào dưới đây? Giúp em bài này với ạ em cần gấp, đừng copy nguồn trên ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là: A. 42510. B. 42610. C. 42710. D. 42810. Câu 9. Số 2510 được biểu diễn trong hệ đếm nhị phân là:.

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    30 thg 4, 2022 · Khớp với công dụng tìm kiếm: 1ac16 bởi bao nhiêu trong hệ hexa. ... Trong hệ cơ số 16 thì ký kết tự D có giá trị khớp ứng bằng .

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    25 thg 7, 2017 · Câu 3: Một byte biểu diễn của số nguyên có dấu trong phạm vi từ: ... Dùng thuật toán tìm giá trị nhỏ nhất: Cho N=6, a1 =3, a 2 =4, a3 =2, ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Hệ đếm Hexa (hệ cơ số 16) AB16 biểu diễn ở hệ đếm nhị phân có dạng: ... Cho thuật toán tìm giá trị nhỏ nhất trong một dãy số nguyên sử dụng liệt kê dưới ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Số 1AC16 trong hệ hexa có giá trị trong hệ thập phân là. answer choices. 425. 426. 427. 428. Tags: Question 7. SURVEY. 120 seconds. Q. Số 2510 được biểu ...

    Xem chi tiết »

  • Số 1 ac trong hệ hexa có giá trị

    Hệ thống số là một cách có hệ thống để đại diện cho các số có ký tự biểu tượng và sử dụng giá trị cơ sở để dễ dàng nhóm các số trong biểu mẫu thu gọn.

    Xem chi tiết »