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 segment
start:
mov ax,...
- [sunbird333] 64.. or 40h.. 12/09 01:02
- [游客] (2)有一数据存放在内存20000H单元中,给定段地址为SA,若想用偏移地址寻此单元,则SA应满足的 07/28 23:17
- [crazyman] 程序正确。 继续吧。 05/14 10:04
- [zbyhxh] 开始我用栈段作了但是结果是逆序存储,所以我改成了现在这样,按顺序排列 05/07 19:45
- [black] 具体的细节,楼主仔细考虑一下 05/07 12:22
- [black] 5,可以考虑使用栈段,把c段 当作栈来使用,每次前两个段的计算结果,可以push到c中--当然前面两 05/07 12:19
- [crazyman] loop s ;cx-2>0继续执行s ------------- cx-1 > 05/04 21:25
- [mess] 36h? ----题目中说:依次传送数据0-63(3fh)0-63(3fh) 难道不是(3fH 05/03 11:35
- [游客] mov cx,36 --- 应该是36h。 05/03 11:31
- [ppt] jmp 0fff:0100 执行指令后CS=2000H,IP=0003H,则CPU从内存 04/25 21:27
[2008-05-13 20:49] 问题7.9
阅读全文 |
评论次数(1) |
浏览次数(512) |
所属类型(汇编作业)
[2008-05-06 20:50] 检测点6.1(5)
assume cs:code
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
c segment
db 0,0,0,0,0,0,0,0
c ends
code segment
start:mov ax,c
mov ax,a
mov ds,ax
mov ax,b
mov es,ax
mov bx,0
mov cx,8
s...
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
c segment
db 0,0,0,0,0,0,0,0
c ends
code segment
start:mov ax,c
mov ax,a
mov ds,ax
mov ax,b
mov es,ax
mov bx,0
mov cx,8
s...
阅读全文 |
评论次数(3) |
浏览次数(578) |
所属类型(汇编作业)
[2008-05-04 20:53] 检测点6.1
1、依次用内存0:0-0:15单元中的数据改写程序中的数据
assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
;用DW定义8个字型数据,在程序加载后,将取得 ;8个字的内存空间,存放这8个数据,位置在cs:0开始
start: mov ax,0
mov ds,ax ;设置段地址为0
mov bx,0
mov cx,8
s:...
assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
;用DW定义8个字型数据,在程序加载后,将取得 ;8个字的内存空间,存放这8个数据,位置在cs:0开始
start: mov ax,0
mov ds,ax ;设置段地址为0
mov bx,0
mov cx,8
s:...
阅读全文 |
评论次数(1) |
浏览次数(531) |
所属类型(汇编作业)
[2008-05-03 10:07] 实验4,[bx]和LOOP的使用
1、向内存0:200-0:23f依次传送数据0-63(3fh)
assume cs:code
code segment
mov ax,0020h
mov ds,ax
mov bl,0
mov cx,36h
s: mov [bx],bl
inc bl
loop s
mov ax,4c00h
int 21h
code ends
end
(3) 下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存0:200处,补全程序。上机调试,跟踪运行结果。
assume cs:c...
assume cs:code
code segment
mov ax,0020h
mov ds,ax
mov bl,0
mov cx,36h
s: mov [bx],bl
inc bl
loop s
mov ax,4c00h
int 21h
code ends
end
(3) 下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存0:200处,补全程序。上机调试,跟踪运行结果。
assume cs:c...
阅读全文 |
评论次数(3) |
浏览次数(607) |
所属类型(汇编作业)
[2008-04-24 19:00] 实验任务
1、根据指令执行后的实际运行情况填空
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=6028
push ax ;SP=00FEH,修改的内存单元地址是220FEH,内容为5CCA
push bx ;SP=00FCH,修改的内存单元地址是220FCH,内容为6028
pop ax ;SP=00FEH,AX=6028
pop bx ...
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=6028
push ax ;SP=00FEH,修改的内存单元地址是220FEH,内容为5CCA
push bx ;SP=00FCH,修改的内存单元地址是220FCH,内容为6028
pop ax ;SP=00FEH,AX=6028
pop bx ...
阅读全文 |
评论次数(1) |
浏览次数(380) |
所属类型(汇编作业)
[2008-04-23 20:38] 检测点3.2
1、补全下面的程序,使其可以将10000H-1000FH中的8个数字,逆序拷贝到20000H-2000FH中
mov ax,1000
mov ds,ax 设置数据段地址
mov ax,2000
mov ss,ax
mov sp,0010 初始化栈顶,因为是入栈所以SP-2=000EH,SP=0010H
push [0] 将内存单元1000:0000处的字入栈
push [2] 将内存单元1000:0002处的字入栈
push [4] 将内存单元1000:0004处的字入栈
push...
mov ax,1000
mov ds,ax 设置数据段地址
mov ax,2000
mov ss,ax
mov sp,0010 初始化栈顶,因为是入栈所以SP-2=000EH,SP=0010H
push [0] 将内存单元1000:0000处的字入栈
push [2] 将内存单元1000:0002处的字入栈
push [4] 将内存单元1000:0004处的字入栈
push...
阅读全文 |
评论次数(2) |
浏览次数(437) |
所属类型(汇编作业)
[2008-04-22 21:08] 检测点3.1 ----2 题
1、写出CPU执行的指令序列(用汇编指令写出)
因为初始值:CS:IP=2000H:0000,所有执行从CS:IP指向的内存单元读取指令所以第一条为:
mov ax,6622 ax=6622H 当前CS=2000H,IP=0000H,则CPU从内存 2000H*16+0=20000H处读取指令,读入后IP=IP+3=0003H
jmp 0fff:0100 执行指令后CS=2000H,IP=0003H,则CPU从内存 2000H*16+0003H=20003H处读取指令,读入后 IP=IP+5=0008H,0ff:0100...
因为初始值:CS:IP=2000H:0000,所有执行从CS:IP指向的内存单元读取指令所以第一条为:
mov ax,6622 ax=6622H 当前CS=2000H,IP=0000H,则CPU从内存 2000H*16+0=20000H处读取指令,读入后IP=IP+3=0003H
jmp 0fff:0100 执行指令后CS=2000H,IP=0003H,则CPU从内存 2000H*16+0003H=20003H处读取指令,读入后 IP=IP+5=0008H,0ff:0100...
阅读全文 |
评论次数(1) |
浏览次数(575) |
所属类型(汇编作业)
[2008-04-22 19:38] 检测点3.1
下面的程序执行时,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值
mov ax,1
mov ds,ax ;将1送入ds中,作为数据段的段地址
mov ax,[0000] AX=2662H,物理地址为0001*16+0=00010,mov指令从该处读取数据为2662H送入AX中。
mov bx,[0001] BX=E626H,物理地址为0001*16+0001=00011,mov指令从该处读取数据为E626H送入BX中。
mov ax,bx AX=E626H,将寄存器bx中的数据送到ax中
mov ax...
mov ax,1
mov ds,ax ;将1送入ds中,作为数据段的段地址
mov ax,[0000] AX=2662H,物理地址为0001*16+0=00010,mov指令从该处读取数据为2662H送入AX中。
mov bx,[0001] BX=E626H,物理地址为0001*16+0001=00011,mov指令从该处读取数据为E626H送入BX中。
mov ax,bx AX=E626H,将寄存器bx中的数据送到ax中
mov ax...
阅读全文 |
评论次数(1) |
浏览次数(749) |
所属类型(汇编作业)
[2008-04-21 19:15] 实验任务
用e命令写入指令并执行
-e
0C2A:0018 01.4e 01.05 01.16 00.14 02.bb FF.00 FF.20 FF.01
0C2A:0020 FF.d8 FF.89 FF.c3 FF.01 FF.d8 FF.b8 FF.1a FF.00
0C2A:0028 FF.bb FF.26 FF.00 FF.00 3F.d8 06.00 4E.dc 01.00
0C2A:0030 4E.c7 0B.b4 14.00 00.00 18.d8 00.04 2...
-e
0C2A:0018 01.4e 01.05 01.16 00.14 02.bb FF.00 FF.20 FF.01
0C2A:0020 FF.d8 FF.89 FF.c3 FF.01 FF.d8 FF.b8 FF.1a FF.00
0C2A:0028 FF.bb FF.26 FF.00 FF.00 3F.d8 06.00 4E.dc 01.00
0C2A:0030 4E.c7 0B.b4 14.00 00.00 18.d8 00.04 2...
阅读全文 |
评论次数(1) |
浏览次数(467) |
所属类型(汇编作业)
[2008-04-21 19:12] 检测点2.3
下面的3条指令执行后,cpu几次修改IP?都是什么时候?最后ip的值是多少?
答:CPU修改了4次IP的值。
第1次:执行完mov ax,bx后
第2次:执行完sub ax,ax后
第3次:读入jmp ax后
第4次:执行完jmp ax后
最后IP的值为0...
答:CPU修改了4次IP的值。
第1次:执行完mov ax,bx后
第2次:执行完sub ax,ax后
第3次:读入jmp ax后
第4次:执行完jmp ax后
最后IP的值为0...
阅读全文 |
评论次数(1) |
浏览次数(403) |
所属类型(汇编作业)
『 查看更多文章 』