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

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  --
  • 『姓名』:                    
  • 『性别』:保密  『发送消息
  • 个人说明:当飞鸟失去飞翔的欲望,翅膀也会变成累赘;
    当理想与激情共舞,凡人也能成为英雄.
  • 详细信息『加为好友』
学习动态
好友圈

[2008-06-23 21:08] 检测点6.1(第二版)

检测点6.1

2, 下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,数据的传送用栈来进行,栈空间设置在程序内。完成程序:
assume cs:codesg
codesg segment
    dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
    dw 0,0,0,0,0
start:
    mov ax,cs     ;cs为所填第一空
    mov ss,ax
    mov sp,18h    ;此条指令为所填第二空
    mov ax,0
    mov ds,ax
    ...
阅读全文 | 评论次数(4) | 浏览次数(1371) | 所属类型(汇编作业)

[2008-06-23 18:49] 实验4 [bx]和loop的使用(第二版)

实验4 [bx]和loop的使用
3,下面得程序的功能是将“mov ax, 4c00h”之前的指令复制到内存0:200处,补全程序。上机调试,跟踪运行结果。
assume cs:code
code segment

    mov ax, cs  ;cs为所填写的数据
    mov ds, ax
    mov ax, 0020h
    mov es, ax
    mov bx, 0
    mov cx, cx   ;cx为所填写的数据,此语句可不写

s: 
mov al, [bx]
    mov es:[bx], al
    inc bx
   ...
阅读全文 | 评论次数(4) | 浏览次数(663) | 所属类型(汇编作业)

[2008-06-21 12:12] 实验3 编程,编译,连接,跟踪(第二版)

实验3 编程,编译,连接,跟踪
(1)将下面的程序保存为t1.asm文件,将其生成可执行文件t1.exe
assume cs:codesg
codesg segment
    mov ax, 2000h
    mov ss, ax
    mov sp, 6 ;此处做了修改:原代码为mov sp, 0
    add sp, 4

    pop ax
    pop bx
    push ax
    push bx
    pop ax
    pop bx

    mov ax, 4c00h  ;程序结束,返回到操作系统系统
    int 21...
阅读全文 | 评论次数(1) | 浏览次数(609) | 所属类型(汇编作业)

[2007-12-27 11:38] 实验13 编写、应用中断例程(3)

点击查看原图
3,下面的程序,分别在屏幕的第2、4、6、8行显示四句英文诗,补全程序。
完整程序如下:
assume cs:code

code segment
     s1: db 'Good, better, best,', '$'
     s2: db 'Never let it rest,', '$'
     s3: db 'Till good is better,', '$'
     s4: db 'And better, best.', '$'
     s:  dw offset s1, offset s2, offset s3, offset s4
     ro...
阅读全文 | 评论次数(1) | 浏览次数(584) | 所属类型(汇编作业)

[2007-12-27 10:35] 实验13 编写、应用中断例程(2)

点击查看原图
2,编写并安装int 7ch中断例程,功能为完成loop指令的功能。
参数:(cx)=循环次数,(bx)=位移

assume cs:code

code segment
start:
      ;安装程序
      mov ax, cs
      mov ds, ax
      mov si, offset MyLoop
      mov ax, 0
      mov es, ax
      mov di, 200h
      mov cx, offset EndMyLoop - offset MyLoop
      CLD
      re...
阅读全文 | 评论次数(1) | 浏览次数(661) | 所属类型(汇编作业)

[2007-12-27 10:16] 实验13 编写、应用中断例程(1)

点击查看原图
实验13 编写、应用中断例程

1,编写并安装int 7ch中断例程,功能为显示一个用0结束的字符串,中断例程安装在0:200处。
参数:(dh)=行号,(dl)=列号,(cl)=颜色,ds:si指向字符串首地址。
代码如下:
assume cs:code

data segment
     db "welcome to masm!",0
data ends

code segment
start:
      ;安装程序
      mov ax, cs
      mov ds, ax
      mov si, offset ShowStr
     ...
阅读全文 | 评论次数(1) | 浏览次数(562) | 所属类型(汇编作业)

[2007-12-27 10:14] 检测点13.2

检测点13.2

判断下面说法的正误:
(1)        我们可以编程改变FFFF:0处的指令,使得CPU不去执行BIOS中的硬件系统检测和初始化程序。
答:这种说法是错误的。因为该内存单元具有‘只读’属性。

(2)        int 19h中断例程,可以由DOS提供。
答:这种说法是错误的。因为int 19h是在DOS启动之前就被执行的中断例程,这里面涉及到一个先后次序的问题,而此次序不能被打乱。...
阅读全文 | 评论次数(1) | 浏览次数(688) | 所属类型(汇编作业)

[2007-12-26 15:09] 检测点13.1

点击查看原图
检测点13.1

1,        上面的内容中,我们用7ch中断例程实现loop的功能,则上面的7ch中断例程所能进行的最大转移位移是多少?
答:所能进行的最大转移位移是128[指向前转移]。
原因:loop指令为循环指令,所有的循环指令都是短转移,在对应的机器码中包含转移的位移,而不是目的地址。对IP的修改范围都为:-128~127。

2,        用7ch中断例程完成jmp near ptr S指令的功能,用bx向中断例程传送转移位移。
应用举例:在屏幕的第12行显示data段中,以0结尾的字符串。
说明:这道题目没有新的东西,NEARJMP可以模仿教材中“用7ch中断例程完成loop指令...
阅读全文 | 评论次数(2) | 浏览次数(538) | 所属类型(汇编作业)

[2007-12-25 15:25] 推荐博文 实验12 编写0号中断的处理程序(改进版2)

点击查看原图
前面Wednesday指出了我第一个程序的不合理之处,我虚心接受并改进了。其实变化的地方不多,就是把
EndDoZeroOver:
      nop 
指令移到了后面,同时把call far ptr ShowStr改为 call ShowStr。
代码如下:
assume cs:code

code segment
start:
      mov ax, cs
      mov ds, ax
      mov si, offset DoZeroOver ;设置ds:si指向源地址 
      mov ax, 0
      mov es, ax
     ...
阅读全文 | 评论次数(2) | 浏览次数(845) | 所属类型(汇编作业)

[2007-12-25 15:20] 实验12 编写0号中断的处理程序(改进版1)

点击查看原图
前面我偷懒,没有重新写屏幕输出指令,这里重新写一个。

assume cs:code

code segment
start:
      mov ax, cs
      mov ds, ax
      mov si, offset DoZeroOver ;设置ds:si指向源地址 
      mov ax, 0
      mov es, ax
      mov di, 200h              ;设置es:di指向目的地址 
      ;设置cx为传输长度 
      mov cx, offset EndDoZeroOver - offset...
阅读全文 | 评论次数(1) | 浏览次数(552) | 所属类型(汇编作业)
页码数(4):  1  2  3  4