汇编网首页登录博客注册
911911的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏
友情链接

[2010-12-06 16:42] 实验8

通过这个程序加深了JMP 标号 指令中保存的是相对位移而不是偏移地址.
assume cs:code
code segment
mov ax,4c00h
int 21h
start:mov ax,0            程序从这里开始
s:nop
nop
mov di,offset s           将S标号偏移地址赋DI
mov si,offset s2          将S2标号偏移地址赋SI
mov ax,cs:[si]            将代码S2处短跳转指令数据赋AX
mov cs:[di],ax            将AX数据赋代码S标号处,没...
阅读全文 | 评论次数(0) | 浏览次数(447) | 所属类型(汇编作业)

[2010-12-06 14:01] 检测点9.3

assume cs:code
code segment
start:mov ax,2000h
mov ds,ax
mov bx,0
s:mov cl,[bx]
mov ch,0
____
inc bx
loop s
ok:dec bx
mov dx,bx
mov ax,4c00h
int 21h
code ends
end start
补全编程,利用LOOP指令,实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储到DX中.
...
mov ch,0
add cx,1
inc bx
......
阅读全文 | 评论次数(0) | 浏览次数(476) | 所属类型(汇编作业)

[2010-12-06 10:44] 检测点9.2

assume cs:code
code segment
start:mov ax,2000h
mov ds,ax
mov bx,0
s:____
____
____
____
jmp short s
ok:mov dx,bx
mov ax,4c00h
int 21h
code ends
end start
补全编程,利用JCXZ指令,实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储在DX中.
...
s:mov cx,0
mov cl,[bx]
jcxz ok
inc bx
jmp short s
......
阅读全文 | 评论次数(0) | 浏览次数(519) | 所属类型(汇编作业)

[2010-12-06 09:56] 检测点9.1

1.
assume cs:code
data segment
?
data ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
jmp word ptr [bx+1]
ocde ends
end start
若要使程序中的JMP指令执行后,CS:IP指向程序的第一条指令,在DATA段中应该定义 db ?,0,0,?,?,?,?,?... ?处可定义任意数据第二,三字节必须为0

2.
assume cs:code
data segment
dd 12345678h
data ends
code se...
阅读全文 | 评论次数(0) | 浏览次数(453) | 所属类型(汇编作业)

[2009-09-29 11:47] 实验7

本想用栈和多个循环,结果越考虑越迷糊,先把自己弄了两天的发上来,再学学其他学长的程序设计

assume cs:code,ds:data
data segment
db '197519761977197819791980198119821983198419851986198719881989199019911992199319941995'
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514,345980,590827,803530,1183000,1843000,2759000,3753000,4649...
阅读全文 | 评论次数(1) | 浏览次数(651) | 所属类型(汇编作业)

[2009-09-15 11:33] 检测点6.1

(1)下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,完成程序:

assume cs:codesg
codesg segment
    dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
start:  mov ax,0
        mov ds,ax
        mov bx,0
        mov cx,8
       s:mov ax,[bx]

      ( mov cs:[bx],ax )

        add bx,2
        loop s
    ...
阅读全文 | 评论次数(1) | 浏览次数(627) | 所属类型(汇编作业)

[2009-09-11 17:47] 第五章实验4

(1)编程,向内存0:200~0:23F依次传送数据0~63(3FH).
(2)编程,向内存0:200~0:23F依次传送数据0~63(3FH),程序中只能使用9条指令,9条指令中包括"mov ax,4c00H"和"int 21H".

assume cs:code
code segment
     mov ax,0020H
     mov ds,ax
     mov bx,0
     mov cx,64
    s:mov [bx],bl
     inc bl
     loop s
     mov ax,4c00H
     int 21H
code...
阅读全文 | 评论次数(2) | 浏览次数(766) | 所属类型(汇编作业)

[2009-09-07 14:43] 第三章实验任务

点击查看原图
(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= 6029

PUSH AX       ;SP= 00FE:修改的内存单元的地址是 220FE 内容为 CA5C 改正 5CCA
PUSH BX       ;SP= 00FC:修改的内...
阅读全文 | 评论次数(2) | 浏览次数(452) | 所属类型(汇编作业)

[2009-09-04 15:02] 检测点3.2

点击查看原图
(1)补全下面的程序,使其可以将10000H~1000FH中的8个字,逆序复制到20000H~2000FH中.逆序复制的含义如图3.17所示(图中内存里的数据均为假设).
  MOV AX,1000H
  MOV DS,AX

 (MOV AX,2000H)
 (MOV SS,AX)
 (MOV SP,0010H)

  PUSH [0]
  PUSH [2]
  PUSH [4]
  PUSH [6]
  PUSH [8]
  PUSH [A]
  PUSH [C]
  PUSH [E]

(2)补全下面的程序,使其可以将10000H~1000FH中的8个字...
阅读全文 | 评论次数(4) | 浏览次数(429) | 所属类型(汇编作业)

[2009-09-03 17:05] 检测点3.1

点击查看原图
(1)在Debug中,用"D 0:0 1F"查看内存,结果如下.
0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
0000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值.
MOV AX,1
MOV DS,AX
MOV AX,[0000]    AX= 2662
MOV BX,[0001]    BX= E626
MOV AX,BX        AX= E626
MOV ...
阅读全文 | 评论次数(2) | 浏览次数(216) | 所属类型(汇编作业)
页码数(2):  1  2