[2014-03-10 20:07] 实验7 寻址方式在结构化数据访问中的应用
程序如下:
assume cs:codesg
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982'
db '1983','1984','1985','1986','1987','1988','1989','1990'
db '1991','1992','1993','1994','1995'
; 以上是表示21年的21个字符串,总共占用内存空间为21*4=84(范围为0到83)字节
dd 16,22,382,1356...
assume cs:codesg
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982'
db '1983','1984','1985','1986','1987','1988','1989','1990'
db '1991','1992','1993','1994','1995'
; 以上是表示21年的21个字符串,总共占用内存空间为21*4=84(范围为0到83)字节
dd 16,22,382,1356...
阅读全文 |
评论次数(0) |
浏览次数(390) |
所属类型(汇编作业)
[2014-02-28 20:06] 实验6 实践课程程序
1、将课程中所有讲解过的程序上机调试,用debug跟踪其执行过程,并在过程中进一步理解;
2、编程,完成问题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. modify '
datasg ends
codesg segme...
2、编程,完成问题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. modify '
datasg ends
codesg segme...
阅读全文 |
评论次数(0) |
浏览次数(362) |
所属类型(汇编作业)
[2014-02-22 20:11] 实验5 编写、调试具有多个段的程序
5.1
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
data ends
stack segment
dw 0,0,0,0,0,0,0,0
stack ends
code segment
start:mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds:[0]
...
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
data ends
stack segment
dw 0,0,0,0,0,0,0,0
stack ends
code segment
start:mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds:[0]
...
阅读全文 |
评论次数(0) |
浏览次数(413) |
所属类型(汇编作业)
[2014-02-18 13:34] 第5章,实验4 【bx】和loop的使用
1、编程,向内存0:200~0:23F依次传送数据0~63(3fh)。
2、编程,向内存0:200~0:23F依次传送数据0~63(3fh),程序中只能使用9条指令,9条指令中包括“mov ax,4cooh”和“int 21h”。
答案:将1、2都依照2的条件编程如下
assume cs:code
code segment
mov ax,oo20h
mov ds,ax
mov bx,0
mov cx,64
s:mov ds:[bx],bx
inc bx
loop s
mov ax,4cooh
int 21h
code...
2、编程,向内存0:200~0:23F依次传送数据0~63(3fh),程序中只能使用9条指令,9条指令中包括“mov ax,4cooh”和“int 21h”。
答案:将1、2都依照2的条件编程如下
assume cs:code
code segment
mov ax,oo20h
mov ds,ax
mov bx,0
mov cx,64
s:mov ds:[bx],bx
inc bx
loop s
mov ax,4cooh
int 21h
code...
阅读全文 |
评论次数(0) |
浏览次数(404) |
所属类型(汇编作业)
[2013-12-12 20:41] 2013-12-12 实验3 编程、编译、连接、跟踪
1、编程:Edit
编译:masm
连接: link
跟踪:debug t1.exe
2、开始 ss:sp=2000:0010
pop ax
pop bx
出栈后 ss:sp=2000:0014
push ax
puxh bx
压栈后 ss:sp=2000:0010
pop ax
pop bx
出栈后 ss:sp=2000:0014
ax与bx中的内容交换
3、查看psp的内容...
编译:masm
连接: link
跟踪:debug t1.exe
2、开始 ss:sp=2000:0010
pop ax
pop bx
出栈后 ss:sp=2000:0014
push ax
puxh bx
压栈后 ss:sp=2000:0010
pop ax
pop bx
出栈后 ss:sp=2000:0014
ax与bx中的内容交换
3、查看psp的内容...
阅读全文 |
评论次数(0) |
浏览次数(371) |
所属类型(汇编作业)
[2013-12-10 21:46] 2013-12-10 第四章学习
我自己通过收集网上的一些资料,配置了一个比较方便的开发环境,希望能对他人有点帮助!:-)
1.首先下载masm5.0,直接在王爽论坛上下载就可以了。5.0的版本应 付目前的学习是足足有余了!
2.将下载的压缩包里的link.exe和masm.exe拷到c:\windows目录下。这样就能保证在dos界面下不管什么路径都能访问那两个文件。
3.将下面的文件做成注册表文件,即保存成*.reg形式的文件,直接双击就可以写入注册表了。注册完了以后只要你右击任何一个文件或文件夹,都会发现多了个“cmdhere”按钮,也就是类似于“dos在这儿”的功能,只不过比那个功能更实用一点,因为对于文件...
1.首先下载masm5.0,直接在王爽论坛上下载就可以了。5.0的版本应 付目前的学习是足足有余了!
2.将下载的压缩包里的link.exe和masm.exe拷到c:\windows目录下。这样就能保证在dos界面下不管什么路径都能访问那两个文件。
3.将下面的文件做成注册表文件,即保存成*.reg形式的文件,直接双击就可以写入注册表了。注册完了以后只要你右击任何一个文件或文件夹,都会发现多了个“cmdhere”按钮,也就是类似于“dos在这儿”的功能,只不过比那个功能更实用一点,因为对于文件...
阅读全文 |
评论次数(0) |
浏览次数(403) |
所属类型(默认类型)
[2013-12-09 22:24] 2013-12-9 实验任务2
1、使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
mov ax,ffff
mov ds,ax
mov ax,2200
mov ss,ax
mov sp,0100
mov ax,[0] ;ax=5BEA
add ax,[2] ;ax=5CCA
mov bx,[4] ;bx=30F0
add bx,[6] ;bx=6022
push ax ;sp=00FE; SS:SP=2200:00FE;5CCA
push bx ;sp=00FC; SS:SP=2200:00FC...
mov ax,ffff
mov ds,ax
mov ax,2200
mov ss,ax
mov sp,0100
mov ax,[0] ;ax=5BEA
add ax,[2] ;ax=5CCA
mov bx,[4] ;bx=30F0
add bx,[6] ;bx=6022
push ax ;sp=00FE; SS:SP=2200:00FE;5CCA
push bx ;sp=00FC; SS:SP=2200:00FC...
阅读全文 |
评论次数(0) |
浏览次数(376) |
所属类型(汇编作业)
[2013-12-05 22:07] 2013-12-5 检测点3.2
1、补全下面的程序,使其可以将10000H~1000FH中的8个字,逆序复制到20000H~2000FH中。
mov ax,1000H
mov ds,ax
mov ax,2000H
mov ss,ax ss段地址寄存器不能直接存放数据
mov sp,0010 不是0000,是因为接下来的push指令执行时,先是改变sp(sp-2),然后再向ss:sp指向的内存中传送数据。
push [0]
push [2]
push [4]
push [6]
push [8]
push [...
mov ax,1000H
mov ds,ax
mov ax,2000H
mov ss,ax ss段地址寄存器不能直接存放数据
mov sp,0010 不是0000,是因为接下来的push指令执行时,先是改变sp(sp-2),然后再向ss:sp指向的内存中传送数据。
push [0]
push [2]
push [4]
push [6]
push [8]
push [...
阅读全文 |
评论次数(0) |
浏览次数(365) |
所属类型(汇编作业)
[2013-12-04 19:37] 2013-12-4 检测点 3.1
1、首先用e指令把数据写入相应地址0000:0与0000:10的内存中,其次用a指令把汇编指
令写入默认地址的内存中,然后用t指令逐条执行,可以观察到相应寄存器中内容的变
化。
mov ax,1
mov ds,ax
mov ax,[0] ax=2662H
mov bx,[1] bx=e626H
mov ax,bx ax=e626H
mov ax,[0] ax=2662H
mov bx,[2] ax=d6e6H
add ax,bx ax=fd48...
令写入默认地址的内存中,然后用t指令逐条执行,可以观察到相应寄存器中内容的变
化。
mov ax,1
mov ds,ax
mov ax,[0] ax=2662H
mov bx,[1] bx=e626H
mov ax,bx ax=e626H
mov ax,[0] ax=2662H
mov bx,[2] ax=d6e6H
add ax,bx ax=fd48...
阅读全文 |
评论次数(0) |
浏览次数(400) |
所属类型(汇编作业)
[2013-11-30 19:49] 2013-11-30 实验1 实验任务
1、使用debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的
变化。
机器码 汇编指令 相关寄存器中内容的变化
b8 20 4e mov ax,4e20 ax=4e20 bx=0000
05 16 14 add ax,1416 ax=6236 bx=0000
bb 00 20 mov bx,2000 ax=6236 bx=2000
01 d8 add ax,bx ax=8236 bx=2000
89 c3 mo...
变化。
机器码 汇编指令 相关寄存器中内容的变化
b8 20 4e mov ax,4e20 ax=4e20 bx=0000
05 16 14 add ax,1416 ax=6236 bx=0000
bb 00 20 mov bx,2000 ax=6236 bx=2000
01 d8 add ax,bx ax=8236 bx=2000
89 c3 mo...
阅读全文 |
评论次数(1) |
浏览次数(550) |
所属类型(汇编作业)
『 查看更多文章 』