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

我的博客

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

[2012-05-06 21:01] 实验十三(二)

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

assume cs:code
code segment
start:mov ax,cs
  mov ds,ax
  mov si,offset lp
  
  mov ax,0
  mov es,ax
  mov di,200h
  
  mov cx,offset lpend - offset lp
  cld
  rep movsb
  
  mov word ptr es:[7ch*4],200h
  mov word ptr es:[7...
阅读全文 | 评论次数(1) | 浏览次数(207) | 所属类型(汇编作业)

[2012-05-06 20:57] 实验十三(一)

点击查看原图
第十三章
检测点13.1
(1)
7ch中断例程如下:
lp: push bp
 mov bp,sp
 dec cx
 jcxz lpret
 add [bp+2],bx
lpret: pop bp 
 iret
 (1)在上面的内容中,我们用7ch中断例程实现loop的功能,则上面的7ch中断例程所能进行的最大转移位移是多少?

最大位移是FFFFH
因为,bx最大值为ffffh

(2)
用7ch中断例程完成jmp near ptr s指令功能,用bx向中断例程传送转移位移。
把loop指令功能的中断例程中的指令换成如下就行了:
push bp
mo...
阅读全文 | 评论次数(2) | 浏览次数(694) | 所属类型(汇编作业)

[2012-05-05 20:09] 实验十二,延伸

点击查看原图
看到原来的除法溢出中断处理程序,显示的字符串会随着行数的变化而变化,所以做了一个伪功能的中断处理程序。但是,毕竟程序不完善,且程序想法不同。所以有如下两个问题:
1.字符串第一次不会出现,当“程序正常返回”出现时,按第二次才会出现。
2.可能会有时候显示检测不准的时候。


assume cs:code

code segment

start:mov ax,cs
      mov ds,ax
   mov si,offset do0                ;设置源地址
   
   mov ax,0
   mov es,ax
   mov di,200...
阅读全文 | 评论次数(4) | 浏览次数(217) | 所属类型(汇编作业)

[2012-05-04 20:24] 第十二章作业

点击查看原图
检测点12.1
(1)用debug查看内存,情况如下:
0000:0000  68 10 A7 00 8B 01 70 00-16 00 9D 03 8B 01 70 00
则3号中断源对应的中断处理程序入口的偏移地址的内存单位的地址为: 0070:018b 

检测点涉及相关内容:
一个表项存放一个中断向量,也就是一个中断处理程序的入口地址,这个入口地址包括段地址和偏移地址,一个表项占两个字,高地址存放段地址,低地址存放偏移地址

检测点12.1
(2)
存储N号中断源对应的中断处理程序入口的偏移地址的内存单元的地址为: 4N 
存储N号中断源对应的中断处理程序入口的段...
阅读全文 | 评论次数(2) | 浏览次数(214) | 所属类型(汇编作业)

[2012-05-02 19:42] 第十一章作业

点击查看原图
第十一章
检测点11.1
写出下面每条指令执行后,ZF、PF、SF、等标志位的值。 
sub al,al     al=0h        ZF=1        PF=1        SF=0  
mov al,1      al=1h        ZF=1        PF=1        SF=0  
push ax       ax=1h        ZF=1        PF=1        SF=0  
pop bx        bx=1h        ZF=1        PF=1        SF=0  
add al,bl     al=2...
阅读全文 | 评论次数(3) | 浏览次数(224) | 所属类型(汇编作业)

[2012-05-02 19:37] 课程设计1(续)

dtoc:                   ;定义子程序
;名称:dtoc
;功能:将dword型数据转变为表示十进制的字符串,字符串以0为结尾符。
;参数:(ax)=dword型数据的低16位;
;      (dx)=dword型数据的高16位;
;      ds:si指向字符串首地址。
;返回:无。
        push ax
        push bx
        push cx
        push dx
        push si          ;以上皆为存储主程序中各寄存器的值

        mov bx,0      ...
阅读全文 | 评论次数(3) | 浏览次数(189) | 所属类型(汇编作业)

[2012-05-02 19:36] 课程设计1

点击查看原图
assume cs:code,ds:data,es:table
table segment
  db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
  db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
  db '1993','1994','1995'
  ;以上是表示21年的21个字符串
  
  dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,19...
阅读全文 | 评论次数(3) | 浏览次数(213) | 所属类型(汇编作业)

[2012-04-23 15:35] 实验十(二)


dtoc:                    ;定义子程序
;名称:dtoc
;功能:将word型数据转变为表示十进制的字符串,字符串以0为结尾符
;参数:(ax)=word型数据 ds:si指向字符串的首地址
;返回:无
        push ax
        push bx
        push cx
        push dx
        push si          ;以上皆为存储主程序中各寄存器的值

        mov bx,0         ;将bx置零,用于存储位数

change: mov cx,10d    ...
阅读全文 | 评论次数(1) | 浏览次数(138) | 所属类型(汇编作业)

[2012-04-23 15:33] 实验十(一)

实验十
三个课本子程序,一个扩展子程序

show_str:                ;定义子程序
;名称:show_str
;功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串。
;参数:(dh)=行号(取值范围1~25)
;      (dl)=列号(取值范围1~80)
;      (cl)=颜色,ds:si指向字符串的首地址
;返回:无
        push cx
  push es
        push si
        push di          ;以上皆为保存主程序各寄存器的值
        mov ax,0b800...
阅读全文 | 评论次数(1) | 浏览次数(148) | 所属类型(汇编作业)

[2012-04-22 20:56] 第十章作业

写贪吃蛇知识不够用了,只能加大马力!
拿下了第十章
还剩下课程设计还没做。
……………………………………………………………………………………………………
第十章
检测点10.1 
补全程序,实现从内存1000:0000处开始执行指令。
assume cs:code
stack segment
 db 16 dup (0)
stack ends
code segment
start: mov ax,stack
 mov ss,ax
 mov sp,16
 mov ax, 1000h 
 push ax
 mov ax,   0   
 push ax
 re...
阅读全文 | 评论次数(1) | 浏览次数(144) | 所属类型(汇编作业)
页码数(4):  1  2  3  4