assume cs:codesg
datasg segment
db "Beginner's All-purpose Symbolic Instruction Code.",0," Hello World!!!"
datasg ends
stacksg segment stack
db 180h dup(0feh)
stacksg ends
codesg segment
start:
mov ax, datasg
mov ds, ax
mov si, 0
;显示转换前的字符串
mov dl, 0
mov dh, 5
mov ...


[2011-02-26 01:18] 实验十一——编写子程序,大写转小写
阅读全文 |
评论次数(0) |
浏览次数(420) |
所属类型(汇编作业)
[2011-02-21 00:36] 课程设计一(解决方案1——使用一层循环解决该问题)
;Title: Curriculum Design One
;File: cd1.asm
;Function: Display the data of Power Idea in the form of Table Under DOS
;Note: A Concise Looking Solution, Solve this Question in One Layer of Loop, but have to be Careful When Dealing with Registers.
;Author: Chao Zhou
;Date: 02-21...
;File: cd1.asm
;Function: Display the data of Power Idea in the form of Table Under DOS
;Note: A Concise Looking Solution, Solve this Question in One Layer of Loop, but have to be Careful When Dealing with Registers.
;Author: Chao Zhou
;Date: 02-21...
阅读全文 |
评论次数(0) |
浏览次数(434) |
所属类型(汇编作业)
[2011-02-20 23:57] 实验10——编写子程序
1.显示字符串
;说明: 在指定的位置,用指定的颜色,显示一个用0结束的字符串
;参数: (dh) = 行号(取值范围0-24),(dl)=列号(取值范围0-79),(cl)=颜色,ds:si指向字符串的首地址
;结果: 没有返回值
show_str:
push ax
push bx
push cx
push es
push si
mov ax, 0B800H
mov es, ax
;计算缓存首地址
mov bx, 0
mov al, 160
mul dh
add bx, ax
mov al, 2
mul dl
...
;说明: 在指定的位置,用指定的颜色,显示一个用0结束的字符串
;参数: (dh) = 行号(取值范围0-24),(dl)=列号(取值范围0-79),(cl)=颜色,ds:si指向字符串的首地址
;结果: 没有返回值
show_str:
push ax
push bx
push cx
push es
push si
mov ax, 0B800H
mov es, ax
;计算缓存首地址
mov bx, 0
mov al, 160
mul dh
add bx, ax
mov al, 2
mul dl
...
阅读全文 |
评论次数(0) |
浏览次数(414) |
所属类型(汇编作业)
[2011-02-18 19:47] 检测点11.3-11.4
检测点11.3
(1)
jb s0
ja s0
(2)
jna s0
jnb s0
检测点11.4
(AX) = 0045H
mov ax, 0
push ax
popf
;上述为PSW清零
mov ax, 0fff0h
add ax, 0010h
;经过该运算,有OF=0, SF=0, ZF=1, PF=1, CF=1
pushf
pop ax
;PSW拷贝至AX,AX中各BIT对应PSW中各BIT,其余各位的值不确定,使用DEBUG调试时,有AX = 3047,有TF=1、IF=1, BIT1位为1(根据资料该位未占用,为何会被修改?) ...
(1)
jb s0
ja s0
(2)
jna s0
jnb s0
检测点11.4
(AX) = 0045H
mov ax, 0
push ax
popf
;上述为PSW清零
mov ax, 0fff0h
add ax, 0010h
;经过该运算,有OF=0, SF=0, ZF=1, PF=1, CF=1
pushf
pop ax
;PSW拷贝至AX,AX中各BIT对应PSW中各BIT,其余各位的值不确定,使用DEBUG调试时,有AX = 3047,有TF=1、IF=1, BIT1位为1(根据资料该位未占用,为何会被修改?) ...
阅读全文 |
评论次数(0) |
浏览次数(406) |
所属类型(汇编作业)
[2011-02-14 11:59] 检测点11.2
11.2 CF OF SF ZF PF
SUB AL,AL 0 0 0 1 1
MOV AL,10H 0 0 0 1 1
ADD AL,90H 0 0 1 0 1
MOV AL,80H 0 0 1 0 1
ADD AL,80H 1 1 0 1 1
MOV AL,0FCH 1 1 0 1 1
ADD AL,05H 1 0 0 0 0
MOV AL,7DH 1 0 0 0 0
ADD AL,0BH 0 1...
SUB AL,AL 0 0 0 1 1
MOV AL,10H 0 0 0 1 1
ADD AL,90H 0 0 1 0 1
MOV AL,80H 0 0 1 0 1
ADD AL,80H 1 1 0 1 1
MOV AL,0FCH 1 1 0 1 1
ADD AL,05H 1 0 0 0 0
MOV AL,7DH 1 0 0 0 0
ADD AL,0BH 0 1...
阅读全文 |
评论次数(0) |
浏览次数(376) |
所属类型(汇编作业)
[2011-02-14 10:07] 实验九——显存编程
assume cs:codesg, ss:stacksg, ds:datasg
ATTR_BLUEF EQU 00000010B ;绿色
ATTR_REDF_GREENB EQU 00100100B ;绿底红色
ATTR_BLUEF_WHITEB EQU 01110001B ;白底蓝色
datasg segment
db 'welcome to masm!'
db ATTR_BLUEF
db ATTR_REDF_GREENB
db ATTR_BLUEF_WHITEB
datasg ends
stacksg segment
dw ...
ATTR_BLUEF EQU 00000010B ;绿色
ATTR_REDF_GREENB EQU 00100100B ;绿底红色
ATTR_BLUEF_WHITEB EQU 01110001B ;白底蓝色
datasg segment
db 'welcome to masm!'
db ATTR_BLUEF
db ATTR_REDF_GREENB
db ATTR_BLUEF_WHITEB
datasg ends
stacksg segment
dw ...
阅读全文 |
评论次数(0) |
浏览次数(424) |
所属类型(汇编作业)
[2011-02-13 18:36] 实验八——分析一个奇怪的程序
assume cs:codesg
codesg segment
mov ax, 4c00h
int 21h
start: mov ax, 0
s: nop
nop
mov di, offset s
mov si, offset s2
mov ax, cs:[si]
mov cs:[di], ax
s0: jmp short s
s1: mov ax,0
int 21h
mov ax,0
s2: jmp short s1
nop
codesg ends
end start
如上的程序可以正确返回。
...
codesg segment
mov ax, 4c00h
int 21h
start: mov ax, 0
s: nop
nop
mov di, offset s
mov si, offset s2
mov ax, cs:[si]
mov cs:[di], ax
s0: jmp short s
s1: mov ax,0
int 21h
mov ax,0
s2: jmp short s1
nop
codesg ends
end start
如上的程序可以正确返回。
...
阅读全文 |
评论次数(0) |
浏览次数(412) |
所属类型(汇编作业)
[2011-02-13 17:39] 第9章检测点
检测点9.1
(1)
db 0h,0h,0h
(2)
mov [bx], bx
mov [bx+2], cs
检测点9.2
mov cl, [bx]
mov ch, 0
jcxz ok
inc bx
检测点9.3
inc cx...
(1)
db 0h,0h,0h
(2)
mov [bx], bx
mov [bx+2], cs
检测点9.2
mov cl, [bx]
mov ch, 0
jcxz ok
inc bx
检测点9.3
inc cx...
阅读全文 |
评论次数(0) |
浏览次数(158) |
所属类型(汇编作业)
[2011-02-12 23:01] 第八章——试验7:寻址方式在结构化数据访问中的应用
assume cs:codesg
YEAR_ARRRY EQU 0H
SUMM_ARRAY EQU 84
COUNT_ARRAY EQU 168
M_YEAR EQU 0H
M_SUMM EQU 5H
M_COUNT EQU 0AH
M_AVER EQU 0DH
data segment
;表示21年年份,字符串
...
YEAR_ARRRY EQU 0H
SUMM_ARRAY EQU 84
COUNT_ARRAY EQU 168
M_YEAR EQU 0H
M_SUMM EQU 5H
M_COUNT EQU 0AH
M_AVER EQU 0DH
data segment
;表示21年年份,字符串
...
阅读全文 |
评论次数(0) |
浏览次数(203) |
所属类型(汇编作业)
[2011-02-12 21:28] 实验六——问题7.9
assume cs:codesg, ss:stacksg, ds:datasg
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
datasg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. moidfy '
datasg ends
codesg segment
start:
mov ax,stacksg
mov ss,ax
mov sp,10h
...
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
datasg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. moidfy '
datasg ends
codesg segment
start:
mov ax,stacksg
mov ss,ax
mov sp,10h
...
阅读全文 |
评论次数(0) |
浏览次数(164) |
所属类型(汇编作业)