Trắc nghiệm, bài giảng pptx các môn chuyên ngành Y dược và các ngành khác hay nhất có tại “tài liệu ngành Y dược hay nhất”; https://123doc.net/users/home/user_home.php?use_id=7046916. Slide bài giảng môn cấu trúc máy tính ppt dành cho sinh viên chuyên ngành công nghệ - kỹ thuật và các ngành khác. Trong bộ sưu tập có trắc nghiệm kèm đáp án chi tiết các môn, giúp sinh viên tự ôn tập và học tập tốt môn cấu trúc máy tính bậc cao đẳng đại học chuyên ngành công nghệ - kỹ thuật và các ngành khác
Trang 1CÁC THIẾT BỊ
ĐẦU CUỐI
Trang 2CÁC THIẾT BỊ ĐẦU CUỐI
1 Bàn phím (Keyboard).
2 Máy in (Printer)
3 Đĩa cứng (Hard Disk)
4 Chuột (Mouse)
Trang 3Mçi phÝm nhÊn ® îc m¹ch ®iÖn tö t¹o:
- M· quÐt (scan code) göi cho CPU
- Vµ kÝch ho¹t ng¾t cøng INT 09h
Trang 4c) CÊu t¹o bµn phÝm
Trang 5d) Mã quét của phím
nhấn
•- Mạch tạo mã quét được thực hiện
trên VĐK 8048
•- VĐK 8048 theo dõi có phím nào được
nhấn, báo cho CPU thông qua ngắt INT 09h.
•- Khi phím nhả, VĐK gửi mã nhả bằng
mã nhấn cộng 128 (80h)
• Ví dụ : khi ta nhấn chữ z , scan code là 44
(2Ch)
• Nhả phím này ra bàn phím tạo mã scan
172 (ACh)
Trang 6B¶ng m· quÐt cña 83 phÝm m¸y
PC/XT
B¶ng 10-1 M· quÐt bµn phÝm 83 phÝm cña m¸y tÝnh PC/XT
Hex Key Hex Key Hex Key Hex Key
01 Esc 15 Y and y 29 ~ and , 3D F3
02 ! and 1 16 U and u 2A LeftShift 3E F4
03 @ and 2 17 I and i 2B | and \ 3F F5
04 # and 3 18 O and o 2C Z and z 40 F6
05 $ and 4 19 P and p 2D X and x 41 F7
06 % and 5 1A { and [ 2E C and c 42 F8
07 ^ and 6 1B } and ] 2F V and v 43 F9
08 & and 7 1C Enter 30 B and b 44 F10
09 * and 8 1D Ctrl 31 N and n 45 Numlock
0A ( and 9 1E A and a 32 M and m 46 ScrollLock
0B ) and 0 1F S and s 33 < and , 47 7 and home
0C _ and - 20 D and d 34 > and 48 8 and UpArrow
0D + and = 21 F and f 35 ? and / 49 9 and PgUp
0E Backspace 22 G and g 36 RightShift 4A - (gray)
0F Tab 23 H and h 37 PrtSc and * 4B 4 and LeftArrow
10 Q and q 24 J and j 38 Alt 4C 5 (keypad)
11 W and w 25 K and k 39 Spacebar 4D 4 and RightArrow
12 E and e 26 L and l 3A Capslock 4E + (gray)
13 R and r 27 : and ; 3B F1 4F I and End
14 T and t 28 “ and ‘ 3C F2 50 2 and DownArrow
51 3 and PgDn
52 0 and Ins
53 and Del
Trang 7M· quÐt bµn phÝm tæ hîp
B¶ng 10-2 M· quÐt bµn phÝm tæ hî p
Hex Keys Hex Keys Hex Keys Hex Keys
54 Shift F1 60 Ctrl F3 6C Alt F5 78 Alt 1
55 Shift F2 61 Ctrl F4 6D Alt F6 79 Alt 2
56 Shift F3 62 Ctrl F5 6E Alt F7 7A Alt 3
57 Shift F4 63 Ctrl F6 6F Alt F8 7B Alt 4
58 Shift F5 64 Ctrl F7 70 Alt F9 7C Alt 5
59 Shift F6 65 Ctrl F8 71 Alt F10 7D Alt 6 5A Shift F7 66 Ctrl F9 72 Ctrl PrtSc 7E Alt 7 5B Shift F8 67 Ctrl F10 73 Ctrl LeftArrow 7F Alt 8 5C Shift F9 68 Alt F1 74 Ctrl RightArrow 80 Alt 9 5D Shift F10 69 Alt F2 75 Ctrl End 81 Alt 10 5E Ctrl F1 6A Alt F3 76 Ctrl PgDn
5F Ctrl F2 6B Alt F4 77 Ctrl Home
Trang 8M· quÐt bµn phÝm më réng
B¶ng 10-3 M· quÐt bµn phÝm më réng
Hex Keys Hex Keys Hex Keys Hex Keys
85 F11 8E Ctrl - 97 Alt Home A0 Alt DownArrow
86 F12 8F Ctrl 5 98 Alt UpArrow A1 Alt PgUp
87 Shift F11 90 Ctrl + 99 Alt PgUp A2 Alt Insert
88 Shift F12 91 Ctrl DownArrow 9A A3 Alt Delete
89 Ctrl F11 92 Ctrl Insert 9B Alt LeftArrow A4 Alt / 8A Ctrl F12 93 Ctrl Delete 9C A5 Alt Tab 8B Alt F11 94 Ctrl Tab 9D Alt RightArrow A6 Alt Enter 8C Alt F12 95 Ctrl / 9E
8D Ctrl UpArrow 96 Ctr * 9F Alt End
Trang 9Byte tr¹ng th¸i bµn phÝm thø nhÊt
(l u trong « nhí 00417h)
Byte tr¹ng th¸i bµn phÝm thø nhÊt
NhÊn RightShift NhÊn LeftShift NhÊn Ctrl NhÊn Alt
NhÊn nh¶
Insert NhÊn nh¶
CapsLock
NhÊn nh¶
Numlock NhÊn nh¶
ScrollLock
d7 d6 d5 d4 d3 d2 d1 d0
Trang 10Byte tr¹ng th¸i bµn phÝm thø hai
(l u trong « nhí 00418h)
Byte tr¹ng th¸i bµn phÝm thø hai
NhÊn Left Ctrl
NhÊn Left Alt
NhÊn Sys Req
Trang 11e) Ngắt INT 09h
• Cứ mỗi lần có 1 tác động ấn phím
CTC phục vụ ngắt INT 09h làm gì?:
1)Đọc cổng 60H để nhận mã scan của phím
2)Chuyển mã scan này thành mã 2 bytes: byte thấp chứa
mã ASCII, byte cao - mã scan.
3)Lưu vào bộ đệm bàn phím (từ 0041Eh đến 0043Eh).
INT 09
ROM BIOS.
Trang 12• Mỗi ký tự đ ợc l u trữ bằng 2 bytes, byte cao là
mã quét, và byte thấp là mã ASCII
• Nh vậy, bộ đệm có thể l u trữ tạm thời 16 ký tự.
Trang 13-Ví dụ: Giả sử phím ‘a’ đã đ ợc nhấn.
MOV AH,00h ; chọn hàm 00h: đọc ký tự
INT16h ; gọi ngắt
Kết quả: AH = 1Eh (mã quét phím ‘a’);
AL = 61h (ASCII cho ‘a’)
Trang 14Chương trình hiện phím được nhấn
cmp al,1bh ;kiem tra co phai phim Esc
jz exit ;neu dung, thoat ra
;neu khong, hien ky tu len man hinh
Trang 17Viết chương trình hiện thông báo “Phim nhan
la:”; sau đó hiện phím được nhấn.
ret
TB DB "Phim nhan la:$" end
Trang 19INT 16H, AH = 2 đọc byte trạng thái bàn phím
Returns:
AL = byte trạng thái của bàn phím
Byte trạng thái bàn phím thứ nhất
Nhấn RightShift Nhấn LeftShift Nhấn Ctrl Nhấn Alt
Nhấn nhả
Insert Nhấn nhả
CapsLock Nhấn nhả
Numlock Nhấn nhả
ScrollLock
d7 d6 d5 d4 d3 d2 d1 d0
Trang 20INT 16h đối với bàn phím mở
Giống AH = 2, ngoài ra còn cung cấp
byte trạng thái vào AH.
Trang 21- Giả sử phím ‘HOME’ đã đ ợc nhấn.
MOV AH,10h ; hàm 10h: đọc bàn phím mở rộng
INT 16h ; gọi ngắt
Kết quả: AH = 71 (mã quét cho phím ‘HOME’)
AL = E0h (mã bàn phím mở rộng của ‘HOME’)
Trang 22a) ChuÈn Centronic (type C):
36 ch©n cña æ nèi cã thÓ ph©n nhãm nh sau:
2 C¸c tÝn hiÖu tr¹ng th¸i m¸y in (m¸y in
Trang 23b) ChuÈn Centronic (type D):
25 ch©n cña æ nèi cã thÓ ph©n nhãm nh sau:
1 C¸c ® êng d÷ liÖu (m¸y tÝnh m¸y in)
2 C¸c tÝn hiÖu tr¹ng th¸i m¸y in (m¸y in m¸y tÝnh).
3 C¸c tÝn hiÖu ®iÒu khiÓn m¸y in (m¸y tÝnh
Trang 24Bè trÝ ch©n cña Centronic (type C)
TT đường
về Tín hiệu Chiều
đ/v PRN
Mô tả
1 19 STROBE IN Xung STROBE phục vụ việc đọc dữ
liệu vào Độ rộng xung tại đầu cuối cần lớn hơn 0,5 µ s Mức tín hiệu thường là “cao” Việc đọc tín hiệu vào được thực hiện ở mức thấp
2-9 20-27 DATA1-8 IN Các tín hiệu này mô tả các bit dữ liệu
song song từ 1-8 Tín hiệu ở mức
"cao" khi dữ liệu có mức lôgic là "1"
và mức "thấp" khi dữ liệu là "0"
10 28 ACKLNG Xung rộng khoảng 0,5 µ s; mức thấp
xác nhận dữ liệu đã được nhận và máy in đang sẵn sàng
11 29 BUSY OUT TÝn hiÖu cao x¸c nhËn m¸y in kh«ng
thÓ nhËn d÷ liÖu
Trang 25b) Cổng điều khiển, trạng thái
và dữ liệu
Status Port Control Port
D5 của cổng điều khiển chỉ đ ợc sử dụng ở chế độ mở rộng Chế độ mở rộng cho phép dùng D0- D7 làm bus dữ
liệu hai chiều .
Cổng điều khiển, trạng thái và dữ liệu của máy in
D0 D1 D2 D3 D4 D5 D6 D7
TIMOUT Reserve d
Reserv ed /ERROR SLCT PE /ACK BUSY
D0 D1 D2 D3 D4 D5 D6 D7
STROB AUTO FDXT INIT SLCT IRQ Enable Direction Reserved Reserved
Data Port
D0
D7
Trang 26c) Bố trí địa chỉ cổng máy in
địa chỉ cổng vào/ra cơ sở của từng máy in
đ ợc ghi vào vùng dữ liệu của BIOS
0040:0008- 0040:000FH
Trang 27d) Quá trình trao đổi máy
tính-máy in
Trang 28Biểu đồ định thời máy
in
Trang 30Ví dụ 1: Sử dụng INT17H viết đoạn chương trình in
Trang 31Khởi tạo cổng máy in
Trang 34Ví dụ 2: Hãy chạy DEBUG và kiểm tra trạng thái
của LPT1 lần lượt cho từng trường hợp: máy in không nối với máy tính và máy in nối với máy tính
Trang 35III Hard Disk • Track - Rãnh • Cylinder – Xi lanh
• Sector
• Cluster
Các thua
ät ngữ
track
sector
Trang 36a) Cấu tạo đĩa
Trang 37b) Dung lượng đĩa
Cấu tạo ổ cứng:
Cách tính dung lượng:
Số rãnh = số xilanh x số đầu từ Dung lượng ổ cứng = số rãnh x số cung x mật độ cung
Trang 38Tính dung lượng ổ cứng Seagate 225 có: 4 đầu từ,
615 xilanh, 17 cung/rãnh và 512 byte/cung.
Trang 39c) Tốc độ đĩa
Thời gian tìm (seek time): là thời gian cần thiết
để đầu từ ghi/đọc định vị đúng tại rãnh hoặc xilanh.
Thời gian định vị (settling time):thời gian cần
thiết để đầu từ hết dao động và bắt đầu đọc được
dữ liệu - được gọi là thời gian định vị
Thời gian chờ (latency time): thời gian chờ đĩa
quay nốt, để đầu từ định vị đúng tại cung cần thiết
Trang 40d) Mã hóa dữ liệu trên đĩa cứng
Trang 41e) Phân chia đĩa
• Chia đĩa cứng vật lý thành nhiều đĩa logic
• Sử dụng chương trình FDISK.COM của DOS
• Nhãn đĩa cứng logic: C, D, E, …
• Sau khi phân chia đĩa logic, mỗi đĩa
cần định dạng đĩa bằng lệnh FORMAT của DOS.
Trang 42f) Định dạng (Format) đĩa
Bản ghi khởi động (Boot record)
Bảng định vị tệp tin (File Alocation
Trang 431 Bản ghi khởi động (Boot Record)
• Vị trí: cung đầu tiên của đĩa luôn
luôn được dành cho bản ghi khởi động (cung 1, mặt 0 rãnh 0)
• Chức năng: xác định kiểu đĩa, mật độ
cung, tổng số cung trên đĩa và các
thông tin trọng yếu khác mà BIOS và
hệ điều hành cần đến
Trang 440D 1 Sè cung (sector)
trªn liªn cung (Cluster)
Trang 462 Thư mục (Directory)
3 1
2 4
2 3
2 2
2 1
2 0
1 9
1 8
1 7
1 6
1 5
1 4
1 3
1 2
1 1
1 0
9 8 7 6 5 4 3
2 8
2 7
2 6
2 5
Kích thước tệp
Trang 473 Bảng FAT (bảng định vị
tệp tin)
Chức năng: Bảng FAT cung cấp một lộ
trình cho hệ điều hành tìm kiếm vị trí các tệp tin.
Vị trí: Bảng FAT luôn được định vị tại các cung tiếp theo sau cung bản ghi khởi động.
4 dạng bảng FAT được sử dụng (phụ thuộc vào phiên bản của hệ điều hành)
đó là bảng FAT 12, 16 , 32 bit và NTFS
Trang 48Hệ thống tập tin của
DOS và điều khiển đĩa
• Bảng FAT : (File Allocation Table)
Nằm ngay sau Boot Sector
(sector 0).
Bảng FAT được tạo ra khi ta partion đĩa cứng
Nội dung Bảng FAT mô tả
trạng thái của các cluster còn
tốt hay đã hư (vật lý), đã
dùng hay chưa dùng…
Trang 49Lập trình đĩa
Thẻ file (File handle) và mã lỗi
Giới thiệu một số hàm xử lý tệp tin của ngắt 21H
Trang 50Ng¾t INT 21H, AH=3CH (t¹o tÖp)
Trang 51Ng¾t INT 21H, AH=40H (ghi
tệp
Trang 53AH=3FH (đọc tệp)
MOV AH,3FH
MOV DX,OFFSET INBUF ;địa chỉ offset bộ đệm
Trang 56IV Chuét
a) CÊu t¹o:
Trang 57b) Mạch ghép nối và ch ơng trình
điều khiển:
• Chuột đ ợc nối với PC qua cổng nối tiếp.
• Khi dịch chuyển hoặc nhấn, nhả các
phím chuột, nó sẽ phát ra một gói dữ liệu tới mạch giao tiếp và mạch sẽ phát
ra 1 ngắt.
• Ngắt của chuột là INT33h định các giá
trị bên trong gói dữ liệu, làm dịch chuyển con trỏ chuột trên màn hình t
ơng ứng với vị trí của chuột.
Trang 58Khởi tạo chuột
INT 33h / AX=0000 – khởi tạo chuột
Trang 59Hiện con trỏ chuột
INT 33h / AX=0001 - show mouse pointer
Ví dụ:
mov ax, 1 int 33h
Trang 61Lấy vị trí con trỏ và trạng thái nút
nhấn chuột
INT 33h / AX=0003 - get mouse position and status of its buttons
Returns:
–if left button is down: BX=1
–if right button is down: BX=2
–if both buttons are down: BX=3
Trang 62; CHUONG TRINH KIEM TRA CHUOT
name "mouse"
print macro x, y, attrib, sdat ; MACRO hien chuoi ky tu
LOCAL s_dcl, skip_dcl, s_dcl_end
pusha ; luu tat ca cac thanh ghi vao Stack
mov dx, cs
mov es, dx ; CS=ES
mov ah, 13h ; AH=13h: hien chuoi ky tu
mov al, 1 ; co thuoc tinh (attribute)
mov bh, 0 ; trang hien thoi (0)
mov bl, attrib ; thuoc tinh chuoi ky tu
mov cx, offset s_dcl_end - offset s_dcl ; CX chua so ky tu
mov dl, x ; vi tri cot
mov dh, y ; vi tri dong
mov bp,offset s_dcl ; CS:BP tro den chuoi ky tu
int 10h ; goi ngat INT 10h
popa ; khoi phuc tat ca cac thanh ghi tu Stack
jmp skip_dcl
s_dcl DB sdat ; dia chi dau chuoi ky tu
s_dcl_end DB 0 ; dia chi cuoi chuoi ky tu
skip_dcl:
endm
Trang 63clear_screen macro ; MACRO xoa man hinh
pusha
popa
endm
; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
Trang 64print_space macro num ; MACRO in ky tu trong (space)
Trang 65; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
Trang 66; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
; reset mouse and get its status: khoi dong chuot va lay trang thai
int 33h ; goi ngat INT 33h, tra ve AH trang thai
jne ok ; neu OK, nhay den clear_screen
print 1,1,0010_1111b, " mouse not found :-( "
jmp stop ok:
Trang 67; display mouse cursor: hien con tro chuot
check_mouse_buttons:
je hide ; an con tro
; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
Trang 68; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
mov ax, dx
print_space 4 mov curX, cx mov curY, dx jmp check_mouse_buttons
Trang 69; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
hide:
mov ax, 2 ; hide mouse cursor.
clear_screen print 1,1,1010_0000b," free the mice! " stop:
; show box-shaped blinking text cursor:
mov ah, 1 mov ch, 0 mov cl, 8 int 10h print 4,7,0000_1010b," press any key " mov ah, 0
int 16h ret
Trang 70; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)
Trang 71; CHUONG TRINH KIEM TRA CHUOT (tiep tuc)