Bảng mã ASCII chuẩn sử dụng bao nhiêu bít để biểu diễn?
A.
8 bít
B.
7 bít
C.
10 bít
D.
12 bít
Đáp án
Đáp án đúng: B
Bảng mã ASCII (American Standard Code for Information Interchange) chuẩn sử dụng 7 bit để biểu diễn các ký tự. Với 7 bit, ta có thể mã hóa 2^7 = 128 ký tự khác nhau, bao gồm các chữ cái in hoa, chữ cái thường, chữ số, dấu câu và các ký tự điều khiển.
Bảng mã ASCII (American Standard Code for Information Interchange) chuẩn sử dụng 7 bit để biểu diễn các ký tự. Với 7 bit, ta có thể mã hóa 2^7 = 128 ký tự khác nhau, bao gồm các chữ cái in hoa, chữ cái thường, chữ số, dấu câu và các ký tự điều khiển.
Để chuyển đổi một số từ hệ thập phân (cơ số 10) sang hệ hexa (cơ số 16), ta thực hiện các bước sau:
1. Chia số thập phân cho 16: Chia liên tục số thập phân cho 16 và ghi lại số dư cho đến khi thương bằng 0. 2. Lấy số dư theo thứ tự ngược lại: Các số dư, viết theo thứ tự ngược lại so với thứ tự tạo ra chúng, sẽ là biểu diễn của số đó trong hệ hexa.
Áp dụng vào số 2008:
- 2008 ÷ 16 = 125 dư 8 (8 là chữ số cuối cùng trong biểu diễn hexa) - 125 ÷ 16 = 7 dư 13 (13 tương ứng với chữ D trong hệ hexa) - 7 ÷ 16 = 0 dư 7 (7 là chữ số đầu tiên trong biểu diễn hexa)
Vậy, 2008 trong hệ thập phân tương ứng với 7D8 trong hệ hexa. Kí hiệu hexa thường được viết là 7D8h.
Trong ngôn ngữ Assembler, tên hợp lệ phải tuân theo một số quy tắc nhất định. Thông thường, tên phải bắt đầu bằng một chữ cái (A-Z, a-z) hoặc dấu gạch dưới (_), và có thể chứa các chữ cái, số (0-9) và dấu gạch dưới. Các ký tự đặc biệt khác thường không được phép.
* A. AB.C: Không hợp lệ vì chứa dấu chấm (.). * B. IT’S: Không hợp lệ vì chứa dấu nháy đơn (’). * C. T+: Không hợp lệ vì chứa dấu cộng (+). * D. Hello_2_ABC: Hợp lệ vì bắt đầu bằng một chữ cái, và chỉ chứa chữ cái, số và dấu gạch dưới.
Câu hỏi yêu cầu xác định dòng lệnh hợp lệ trong ngữ cảnh của hợp ngữ (assembly). Phân tích từng lựa chọn:
* A. ACF EQU 10: `EQU` là chỉ thị (directive) để gán một giá trị cho một biểu tượng (symbol). Trong trường hợp này, biểu tượng `ACF` được gán giá trị 10. Lệnh này hoàn toàn hợp lệ.
* B. MOV AH, K: Lệnh `MOV` dùng để di chuyển dữ liệu từ một toán hạng nguồn sang toán hạng đích. `AH` là một thanh ghi (register) 8-bit. Tuy nhiên, `K` không được định nghĩa là một giá trị cụ thể (hằng số, biến, thanh ghi, ...), do đó lệnh này không hợp lệ. Nếu K là một hằng số hoặc một biến, thì lệnh này có thể đúng nếu K có kiểu dữ liệu phù hợp với AH
* C. MOV AH, AL: Lệnh `MOV` dùng để di chuyển dữ liệu từ một toán hạng nguồn sang toán hạng đích. `AH` và `AL` là hai phần (high byte và low byte) của thanh ghi `AX`. Lệnh này di chuyển nội dung của `AL` sang `AH`. Lệnh này hợp lệ.
* D. MOV ACF, 123: Sau khi ACF được định nghĩa bằng EQU, ACF trở thành hằng số. Không thể gán giá trị mới cho một hằng số, do đó lệnh này sai.