📄 a9-1.asm
字号:
;========================================================================
;A9-1.asm
;实验目的: 熟悉编程格式,掌握通过GDT表访问段的编程方法
;实验结果: 可以用dump命令检查数据区,验证程序的运行结果
;========================================================================
.386P
DESC STRUC
LIMITL DW 0
BASEL DW 0
BASEM DB 0
ATTR DB 0
LIMITH DB 0
BASEH DB 0
DESC ENDS
ATCE = 98H
ATDR = 90H
ATDW = 92H
DSEG SEGMENT USE16
GDT LABEL BYTE
ID1 DESC <0FFFFH,0FFFFH,0FFH,0FFH,0FFH,0FFH>
SCODE DESC <0FFFFH,CSEG,,ATCE,,>
DATAS DESC <D1LEN,DSEG1,,ATDW,,>
DATAD DESC <BUFLEN-1,DSEG2,,ATDW,,>
GDTLEN = $-GDT
SCODE_SEL = SCODE-GDT
DATAS_SEL = DATAS-GDT
DATAD_SEL = DATAD-GDT
ID2 DESC <0FFFFH,0FFFFH,0FFH,0FFH,0FFH,0FFH >
ID3 DESC <0FFFFH,0FFFFH,0FFH,0FFH,0FFH,0FFH >
DSEG ENDS
DSEG1 SEGMENT USE16
BUF DB 00H,11H, 22H, 33H, 44H, 55H, 66H, 77H
DB 88H,99H,0AAH,0BBH,0CCH,0DDH,0EEH,0FFH
DB 240 DUP(0)
D1LEN = $-1
DSEG1 ENDS
DSEG2 SEGMENT USE16
BUFLEN = 256
BUFFER DB BUFLEN DUP(0)
DSEG2 ENDS
CSEG SEGMENT USE16
ASSUME CS:CSEG,DS:DSEG
START PROC
MOV AX,DATAS_SEL
MOV DS,AX
MOV AX,DATAD_SEL
MOV ES,AX
CLD
XOR SI,SI
XOR DI,DI
MOV CX,32
M1: MOVSB
LOOP M1
INT 0FFH
START ENDP
CLEN =$-1
CSEG ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -