Slide - Các khái niệm hệ thống số Chuyển đổi cơ số docx

45 390 1
Slide - Các khái niệm hệ thống số Chuyển đổi cơ số docx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Hợp ngữ Khoa Điện tử - Viễn thông Trương Văn Thắng Giới thiệu Các khái niệm hệ thống số Chuyển đổi số Các ghi intel 8088, 8086 1/CÁC HỆ THƠNG SỐ • HỆ 10 10 11 12 13 HỆ 16 A B C D HỆ 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 2/Chuyển đổi số • a/Chuyển từ số b sang số thập phân(10) Ví dụ: chuyển từ số 10 sang số 10 12310 =100+20+3=1X102+2X10+3X100 dn-1dn-2….d1d0.d-1….d-m b số di số 0 1X23+1X21+1X20+1X2-2 * Đổi từ thập lục phân sang thập phân A4B516 10X163+4X162+11X161+5X160 =40960 + 1024 +176 + =42165 b/ Chuyển từ thập phân sang số b ví dụ: chuyển từ thập phân sang thập phân 123.5(10) 123:10=12 dư 3; 12:10=1 dư 2; 1:10=0 dư 1; 0.5x10=1 lẻ Chuyển từ thập phân sang số b dn-1bn-1+dn-2bn-2+…+d1b1+d0 (***) d-1b-1+d-2b-2+….+ d-mb-m (****) Đổi phần nguyên : chia cho số  kết :thương số dư số If thương số tổ hợp dư số số cần tìm ngược lại tiếp tục chia nũa Đổi phần lẻ: nhân số tích  phần: phần nguyên phần lẻ If phần lẻ kết quả:tổ hợp phần CÁC VÍ DỤ Đổi số 26 sang số nhị phân 26/2 =13 dư 13/2 =6 dư /2 =3 dư /2 =1 dư 1 /2 = dư 2610 110102 Đổi số 0.25 10sang nhị phân 0.25 x =0.5 lẻ 0.5 nguyên 0.5 x = 1.0 lẻ nguyên 0.2510 0.012 Đổi 27110 sang số thập lục phân 271 / 16 =16 dư 15 16 / 16 = dư /16 = dư 27110  10F16 Đổi nhị nhân sang thập lục phân ngược lại • Nhị phân thành thập lục phân 11001110.1102  CD.C • Thập lục phân sang nhị phân 1AF.8 16 000110101111.10002 3/Các ghi CPU 8088(8086) • Trong CPU intel có 14 ghi, chia thành nhóm a/ Nhóm ghi đa năng: ghi, 16bits AX( AH AL) (Accumulato ) BX(BH BL) (Base ) CX(CH CL) (Count ) DX(DH DL) (Data) Chức năng: tính tốn chuyển số liệu Vùng nhớ sở chia thành nhiều vùng nhỏ: Bảng vectors ngắt • Có loại ngắt: Ngắt BIOS ngắt DOS đặc biết là: Ngắt phần cứng Ngắt phần mềm • Bảng vectors ngắt: 1KB từ 03FFh chứa bảng vector ngắt Mỗi vector ngắt chiếm 4byte, 2byte đầu chứa offset 2byte chứa segment đoạn chương trình thực ngắt Ngắt_offset=N*4 Ngắt_segment=N*4+2 Ví dụ: [4]=15h Vùng tham số BIOS • Các thiết bị máy tính thơng qua CỔNG mà cổng thuộc địa vùng • Địa vùng từ 40h:0 40h:xxxx 40h:000040h:6 : Địa RS 232( Ngõ COM) 40h:08h 40h:0eh : địa ngõ Printer(LPT) 40h:1Ah : trỏ đầu bàn phím(keyboard)(int 16h) 40h:1Ch :con trỏ cuối bàn phím(keyboard)(int 9) Vùng tham số DOS • Bắt đầu từ địa 50h:0xxxx:xxxx • Các thiết bị DOS thông qua tên :COM1; COM2; LTP1; LTP2; CON; ….V.V (IO.SYS) • Các (interrupts) ngắt • Config.sys (BUFFERS; FILES) • Command trước nạp vào tách làm phần: COMMAND1 COMMAND2 -COMMAND1 chứa thành phần: thành phần kiểm tra command2 hay mất, ngắt: INT 24H lỗi Abort, Retry, Ignore; INT 23H CTRL_C; INT 22H kết Vùng nhớ mở rộng • Vùng có địa từ A0000hđến FFFFFh • Có kích thước 384KB • Có vùng sau: - A000h:0 buffers video chế độ đồ họa(graphics)cho cardv EGA, VGA * Độ phân giải(vi dụ:800x600) * pixell= bit(ví dụ: 8bits biểu diễn pixel) - B000h:0 buffers video chế độ text(mono) toa độ hình Ký tự= (hàng* 80+ cột) *2 Thuộc tính= (hàng* 80+ cột) *2+1 -B800h:0 buffers video chế độ đồ họa(graphics) cho card CGA Thủ tục(Procedure) • Cấu trúc Procedure Ten_procedure Proc near(far) … … ret ten_procedure endp • Ví dụ: in_chuoi proc near mov ah,09 int 21h ret Chương trình model small code org 100h start: jmp main st1 db ‘xin chao $’ in_chuoi proc near mov in_chuoi endp main proc near lea dx,st1 call in_chuoi int 20h … main endp end start Thủ tục(procedure) nhiều tập tin • Public ten_thu_tuc ten_Thu_tuc proc near(far) … …… ten_thu_tuc endp • Public ten_bien ten_bien kichthuoc liệu • Trong chương trình lớn khai báo sau EXTRN Ví dụ:vidu1.asm • model small • code • org 100h • begin:jmp main1 • public st1 • st1 db "xin chao cac ban$" • • main1 proc near • main1 endp Ví du 2:vidu2.asm • model small • code • org 100h • begin1:jmp main2 • public in_chuoi • in_chuoi proc • mov ah,09 • int 21h • ret • in_chuoi endp • main2 proc near Ví du 3:vidu3.asm • model small • code • org 100h • start:jmp main • main proc near • extrn st1:byte • extrn in_chuoi:near • lea dx,st1 • call in_chuoi • call ketthuc • main endp • ketthuc proc near • int 20h • ketthuc endp Dịch chương trình • • • • • Tasm vidu1; Tasm vidu2; Tasm vidu3; Tlink /t vidu3+vidu2+vidu1; IC 8255 CONTROL WORD ĐIỀU KHIỂN • Trước hoạt động: A1A0 = 11 CW = 80h(10000000B)  GỞI RA(OUTPUT) PORT A A1A0 = 00 PORT B A1A0 =01 PORT C A1A0 =10 TRUYỀN QUA NGÕ COM1 ... 0.5x10=1 lẻ Chuyển từ thập phân sang số b dn-1bn-1+dn-2bn-2+…+d1b1+d0 (***) d-1b-1+d-2b-2+….+ d-mb-m (****) Đổi phần nguyên : chia cho số  kết :thương số dư số If thương số tổ hợp dư số số cần tìm... 1101 2 /Chuyển đổi số • a /Chuyển từ số b sang số thập phân(10) Ví dụ: chuyển từ số 10 sang số 10 12310 =100+20+3=1X102+2X10+3X100 dn-1dn-2….d1d0.d-1….d-m b số di số 0

Ngày đăng: 13/08/2014, 17:21

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan