Hệ nhị phân sử dụng 2 kí hiệu (0,1) để biểu diễn thông tin. Các số trong hệ nhị phânđược biểu diễn dưới dạng tổng các luỹ thừa cơ số 2.Ví dụ:Số 1101 trong hệ nhị phân có thể biểu diễn như sau:(1101)2 = 1×23 + 1×22 + 0×21 + 1×20= (13)10Trong hợp ngữ, người ta kí hiệu 1 số nhị phân bằng chữ B hoặc b ở cuối (viết tắt củaBinary).Ví dụ:(1101)2 được kí hiệu là: 1101B, hoặc 1101bc) Hệ thập lục phân (Hexa Decimal) – Hệ đếm cơ số 16Hệ thập lục phân sử dụng 16 kí hiệu (0, 1, 2,…9, A, B, C, D, E, F) để biểu diễn thôngtin. Các kí hiệu A, B, C, D, E, F lần lượt ứng với các giá trị 10, 11, 12, 13, 14, 15 trong hệthập phân. Các số trong hệ thập lục phân được biểu diễn dưới dạng tổng các luỹ thừa cơsố 16.Ví dụ:Số 2B trong hệ thập lục phân có thể biểu diễn như sau:(2B)16 = 2×161 + B×160= (43)10Trong hợp ngữ, người ta kí hiệu 1 số thập lục phân bằng chữ H hoặc h ở cuối (viết tắt củaHexa Decimal).Ví dụ:(2B)16 được kí hiệu là: 2BH, hoặc 2BhChú ý: Kí hiệu một số thập lục phân trong chương trình hợp ngữ phải luôn bắt đầu bằngsố. Ví dụ số (FA)16 được kí hiệu là 0FAh (chứ không kí hiệu là FAh).Hệ thập lục phân (gọi tắt là hệ hex) là hệ đếm được sử dụng nhiều nhất trong hợp ngữ,do nó có thể biểu diễn những dãy bít nhị phân dài bằng những kí hiệu ngắn gọn, dễ nhớhơn.d) Chuyển đổi giữa các hệ đếm• Chuyển từ hệ thập phân về hệ nhị phân:Quy tắc chuyển: Đem số thập phân chia liên liếp cho 2, cho tới khi thương số bằng 0 thìdừng lại. Viết các số dư ngược từ dưới lên ta thu được số nhị phân tương ứng.Ví dụ: Chuyển số thập phân 13 sang hệ nhị phân.613dư 126dư 023dư 1212dư 10Viết các số dư ngược từ dưới lên ta thu được số nhị phân 1101b.• Chuyển từ hệ thập phân về hệ thập lục phân:Quy tắc chuyển: Đem số thập phân chia liên liếp cho 16, cho tới khi thương số bằng 0 thìdừng lại. Viết các số dư ngược từ dưới lên ta thu được số thập lục phân tương ứng.Ví dụ: Chuyển số thập phân 43 sang hệ thập lục phân.4316dư 11216dư 20Viết các số dư ngược từ dưới lên ta thu được số thập lục phân 2Bh (chú ý là 11d = 0Bh).• Chuyển đổi giữa hệ nhị phân và hệ thập lục phân:Việc chuyển đổi giữa 2 hệ đếm này khá dễ dàng do mỗi kí hiệu trong hệ hex lại tươngứng với 4 kí hiệu nhị phân. Xem bảng chuyển đổi sau:Hệ thập phân0123456789101112131415Hệ Hex0123456789ABCDEFHệ nhị phân00000001001000110100010101100111100010011010101111001101111011117Ví dụ 1:Chuyển đổi 2Ah sang hệ nhị phân.Tra bảng ta thấy: 2h = 0010b, Ah = 1010bVậy 2Ah = 00101010bVí dụ 2:Chuyển đổi 10110110b sang hệ hex.Đầu tiên ta chia dãy bít nhị phân thành từng nhóm 4 bít, thu được 2 nhóm sau: 0110 và1011.Tra bảng ta thấy: 0110b = 6h, 1011b = BhVậy 10110110b = B6h1.2.2 Biểu diễn số nguyên trong máy tínhDo giới hạn của phần cứng máy tính, dữ liệu trong máy tính thường được biểu diễn bởicác nhóm 8 bít (gọi là Byte)1 byte = 8 bit2 byte = 16 bit = 1 wordNgười ta có thể ghép nhiều byte hay nhiều word để tạo thành dãy bít dài hơn. Dãy bítcàng dài thì lượng thông tin biểu diễn được càng lớn. Nếu gọi N là số bít của dãy thì sốkhả năng biểu diễn = 2N.Xét một dãy bít nhị phân:1 0 0 1 0 …0 0msblsbBít đầu tiên (bên trái) được gọi là bít nặng nhất hay bít cao nhất của dãy (Most SignificantBit).Bít cuối cùng (bên phải) được gọi là bít nhẹ nhất hay bít thấp nhất của dãy (LeastSignificant Bit).a) Số nguyên không dấu:Một số nguyên không dấu (số không âm) được biểu diễn bởi 1 dãy bít nhị phân như tađã xét ở phần trước (phần hệ đếm nhị phân). Ở đây ta chỉ nhấn mạnh thêm về chiều dàicủa dãy bít: Độ dài dãy bít khi biểu diễn trong máy tính luôn là bội số của 8.Ví dụ: Biểu diễn số nguyên 13 trong máy tính.Ở phần trước ta đã biết: số nguyên 13 chuyển sang hệ nhị phân sẽ là 1101Trong máy tính sẽ có nhiều cách để biểu diễn số nguyên này:+ Số nguyên dạng byte (8 bit): 00001101+ Số nguyên dạng word (16 bit): 00000000 000011018b) Số nguyên có dấu:Đối với số nguyên có dấu thì khi biểu diễn dưới dạng nhị phân ta phải dành ra 1 bít đểxác định dấu. Đó là bít đầu tiên của dãy (bít nặng nhất – Msb).Msb = 0: Dấu DươngMsb = 1: Dấu ÂmNhư vậy, nếu chiều dài dãy bít là 8 thì bít đầu tiên để xác định dấu, 7 bít còn lại xác địnhgiá trị số nguyên?Ví dụ:Số +13 được biểu diễn bởi dãy bít 0000 1101.Vậy số -13 được biểu diễn như thế nào, có phải là dãy bít 1000 1101 hay không?Nguyên tắc để biểu diễn số âm trong máy tính: phải thoả mãn điều kiện sauSố Âm (nhị phân) + Số Dương (nhị phân) = 0Giả sử số -13 được biểu diễn bởi dãy bít 1000 1101, ta đem nó cộng với dãy bít biểu diễnsố +13 để kiểm tra:0000 1101+ 1000 11011001 1010 ≠ 0Ta thấy tổng thu được khác 0, như vậy đây không phải là dãy bít cần tìmQuy tắc tìm số đối: Cho 1 số nguyên A. Giả sử đã biết dãy bít biểu diễn A, khi đó muốntìm dãy bít biểu diễn số -A ta làm như sau:Bước 1: Tìm số bù 1 của A bằng cách đảo tất cả các bít.Ví dụ: A = 0000 1101Khi đó số bù 1 của A là 1111 0010Bước 2: Tìm số bù 2 (bằng cách lấy số bù 1 cộng với 1)1111 0010+11111 0011Số bù 2 tìm được (1111 0011) chính là dãy bít biểu diễn số -A.Ta thử kiểm tra lại bằng cách cộng 2 dãy bít:0000 1101+ 1111 00111 0000 0000Kết quả thu được bằng 0 chứng tỏ ta đã tìm đúng (vì đang biểu diễn số nguyên bằng mộtdãy 8 bit nên số 1 trong kết quả trên có thể loại bỏ – sẽ giải thích kĩ hơn trong chươngsau).Vậy -13 = 1111 0011b9Bài toán ngược:Cho một dãy bít nhị phân sau đây (16 bit):1110 0111 0001 1000bHãy xác định xem nó biểu diễn số nguyên nào?Giải:Gọi số nguyên đó là N.Có 2 trường hợp xảy ra:• Nếu đây là số nguyên không dấu:N = 1×215 + 1×214 + 1×213 + 1×210 + 1× 29 + 1×28 + 1×24 + 1×23= 32768 + 16384 +8192 + 1024 + 512 + 256 + 16 + 8= 59160• Nếu đây là số nguyên có dấu:Vì Msb = 1 nên N là số âm. Để đơn giản ta sẽ xác định -N (số dương) trước, từ đó suy raN.Tìm -N băng cách tìm số bù 2 của NBước 1: đảo bítSố bù 1 = 0001 1000 1110 0111Bước 2: đem cộng với 10001 1000 1110 0111+10001 1000 1110 1000Ta tìm được -N = 0001 1000 1110 1000b= 1×212 + 1×211 + 1× 27 + 1×26 + 1×25 + 1×23= 4096 + 2048 + 128 + 64 + 32 + 8= 6376Vậy N = -63761.2.3 Biểu diễn kí tự trong máy tínhKhi sử dụng máy tính, ta không chỉ làm việc với các con số mà còn phải làm việc vớinhiều loại dữ liệu khác nhau, trong đó có các kí tự. Các kí tự cũng được biểu diễn bởi cácdãy bít nhị phân, sự biểu diễn này mang tính chất quy ước.Tuy nhiên, nếu mỗi người, mỗi cơ quan, mỗi quốc gia lại tự đưa ra quy ước của riêngmình thì sẽ rất khó khăn cho việc trao đổi thông tin. Nhu cầu đặt ra là cần phải có một hệthống quy ước chung mang tính quốc tế.Cách thức mã hoá kí tự được sử dụng rộng rãi nhất trên các máy PC dựa trên bảng mãASCII (American Standard Code for Information Interchange). Hệ thống này sử dụng 8bít để biểu diễn 1 kí tự.10Ví dụ:Kí tựMã nhị phânMã hexA0100 000141hB0100 001042h………a0110 000161hb0110 001062h………10011 000131h20011 001032h………*0010 10102Ah+0010 10112Bh………(Bảng mã ASCII đầy đủ xin xem phần phụ lục 2)Hiện nay có rất nhiều bảng mã khác nhau được sử dụng, phổ biến nhất là mã Unicode,với độ dài dãy bít có thể thay đổi khá mềm dẻo, và nó vẫn giữ được sự tương thích với mãASCII truyền thống.1.3 Tổ chức của máy tính1.3.1 Sơ đồ hệ thống máy tínhNgười ta thường chia các bộ phận của máy tính làm 4 khối sau:NhậpXử lýXuấtLưu trữTrong đó:• Các khối Nhập/Xuất dữ liệu: bao gồm các thiết bị như bàn phím, chuột, mànhình…• Khối lưu trữ: bao gồm các ổ đĩa cứng, đĩa mềm…• Khối xử lý: đây là phần quan trọng nhất của một máy tính, ta sẽ tập trung xem xétnó.11Một hệ thống xử lý của máy tính bao gồm 3 bộ phận chính:+ Bộ vi xử lý – CPU (Central Processing Unit): Là bộ não của máy tính, nó xử lý cácthông tin và điều khiển mọi hoạt động của máy tính.+ Bộ nhớ trong: Là bộ nhớ có khả năng liên lạc trực tiếp với bộ vi xử lý,là nơi lưu trữ dữliệu phục vụ cho quá trình xử lý.+ Các mạch vào ra: Để điều khiển việc giao tiếp với thiết bị ngoại vi.Ngoài ra còn có hệ thống các dây dẫn, cáp nối để liên kết giữa 3 bộ phận trên (hệ thốngBus)BusBộ nhớ trongtCPUMạch vào/ra1.3.2 Bộ vi xử lý – CPUĐây là trung tâm xử lý của máy tính. Mỗi bộ vi xử lý được trang bị một hệ thống cáclệnh cơ bản bằng ngôn ngữ nhị phân (do nhà sản xuất quy định). Người lập trình có thể sửdụng các lệnh này “ra lệnh” cho máy tính thực hiện điều mình muốn.a) Các thành phần chính của bộ vi xử lý:• ALU (Arithmetic & Logic Unit): Khối số học và logic. Đây là nơi thực hiện cácphép tính số học (cộng, trừ, nhân, chia…) và các phép logic (Not, And, Or…).• Các thanh ghi: Cung cấp khả năng nhớ bên trong CPU. Mỗi thanh ghi có khả năngchứa được một dãy các bít dữ liệu (độ dài còn phụ thuộc vao từng loại CPU).• Hệ thống nối ghép bên trong CPU (Bus nội bộ): Cho phép liên lạc giữa các bộphận bên trong CPU.b) Họ vi xử lý Intel x86Có nhiều hãng khác nhau sản xuất bộ vi xử lý cho máy tính. Ta sẽ tập trung nghiêncứu các bộ vi xử lý thuộc dòng x86 do hãng Intel chế tạo.Bộ vi xử lý đầu tiên thuộc dòng này là 8086. Nó được sản xuất năm 1978, là bộ vi xửlý 16 bit đầu tiên của Intel. 8088 ra đời sau 8086 một chút, về cơ bản nó cũng có cấu tạogiống như 8086, nhưng có giá thành rẻ hơn vì chỉ có bus dữ liệu 8 bít, và tốc độ cũng thấphơn. Tiếp sau đó là sự ra đời của các bộ vi xử lý 80186, 80286, 80386, 80486, 80586(Pentium), PII, PIII, P4…Càng về sau thì các bộ vi xử lý lại càng trở nên mạnh mẽ hơnvới độ dài các thanh ghi dài hơn, tốc độ đồng hồ cao hơn, bề rộng bus lớn hơn…c) Bộ vi xử lý 808612
Top các app giải toán cấp 2 THCS lớp 6, 7, 8, 9 TỐT nhất 2023
Qua bài viết này mobo.vn xin chia sẻ với các bạn thông tin và kiến thức về ứng dụng giải...