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

我的博客

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

[2009-11-01 21:19] 实验12 编写0号中断的处理程序

当然这个程序只是验证如何处理0号中断的。如果单独执行程序后,再进行相应的除法举出操作将会出错,因为程序开辟的内存空间会被回收,这样就会把do0的程序破坏掉。
assume cs:code
data segment
  db 100 dup (0)
data ends

code segment
    start:mov ax,data
          mov es,ax
          mov di,0
          mov ax,code
          mov ds,ax
          mov si,offset do0
        ...
阅读全文 | 评论次数(0) | 浏览次数(245) | 所属类型(汇编作业)

[2009-11-01 08:43] 实验11 将小写字母转换成大写字母

assume cs:code
data segment
  db "Beginner's All-purose Symbolic Instruction Code.",0
data ends
code segment
  start:mov ax,data
        mov ds,ax
        mov si,0
      s:cmp byte ptr [si],00h
        je over
        cmp byte ptr [si],61h
        jb next
        cmp byte ptr [si],7ah
 ...
阅读全文 | 评论次数(0) | 浏览次数(225) | 所属类型(汇编作业)

[2009-10-29 16:22] 作业10.2 无溢出除法

assume cs:code
code segment
start:mov dx,42h
      mov ax,23h
      mov cx,07h
      call divdw
      mov ax,4c00h
      int 21h
divdw:dw 0
      push ax
      mov ax,dx
      mov dx,00h
      jcxz judge
      div cx
      mov si, offset divdw
      mov cs:[si],ax
      pop ax
     ...
阅读全文 | 评论次数(0) | 浏览次数(209) | 所属类型(汇编作业)

[2009-10-28 20:28] 作业10.3 纯DOS下完成

这个是在纯DOS系统下编辑,编译,测试通过的。在虚拟机下面有问题的。
assume cs:code,ss:stack
data segment
  dw 12666,123,1,8,3,38
data ends

stack segment
  dw 20 dup (0)
stack ends
  
string segment
  db 50 dup (0)
string ends

code segment
start:mov ax,data
      mov ds,ax
      mov si,0
      mov ax,stack
     ...
阅读全文 | 评论次数(0) | 浏览次数(303) | 所属类型(汇编作业)

[2009-10-25 20:15] 实验10.1

点击查看原图
看了题目第一遍写的,还没有优化:
assume cs:code
data segment
  db 'Welcome to masm!',0
data ends

code segment
start:mov dh,8
      mov dl,3
      mov cl,2
      mov ax,data
      mov ds,ax
      mov si,0
      call show_str

      mov ax,4c00h
      int 21h
show_str:
      mov di,0
      mov ax,...
阅读全文 | 评论次数(0) | 浏览次数(239) | 所属类型(汇编作业)

[2009-10-22 21:53] 检测点10.5

将代码改写成如下,可以观察到实际的执行结果:
为什么用DEBUG单步跟踪的结果不一样呢。估计是DEBUG的中断作用影响了程序的执行,明天先研究一下中断。
assume cs:code
stack segment
  dw 8 dup (0)
stack ends

code segment
start:mov ax,stack
       mov ss,ax
       mov sp,16
       mov ds,ax
       mov ax,0
       call word ptr ds:[0eh]
       inc ax
       in...
阅读全文 | 评论次数(0) | 浏览次数(265) | 所属类型(汇编作业)

[2009-10-18 09:22] 实验9 在屏幕上显示不同格式的字符

assume cs:codesg,ds:datasg
clearsg segment
  dw 1840 dup (0720h)
clearsg ends

datasg segment
  db 'Welcome to Masm!'
datasg ends

codesg segment
start:  mov ax,clearsg
  mov ds,ax
  mov ax,0b800h
  mov es,ax
  mov cx,1840
  mov bx,0
a:  mov ax,[bx]
  mov es:[bx],ax
  add bx,2
loo...
阅读全文 | 评论次数(1) | 浏览次数(460) | 所属类型(汇编作业)

[2009-10-17 08:59] 奇怪的程序

assume cs:codesg 
codesg segment   
     mov ax,04cch 
     int 021h 
start: mov ax,0 
     s: nop 
        nop 
         
        mov di,offset s 
        mov si,offset s2 
        mov ax,cs:[si] 
        mov cs:[di],ax 
         
    s0: jmp short s 
    s1: mov ax,0 
         int 2...
阅读全文 | 评论次数(0) | 浏览次数(274) | 所属类型(汇编作业)

[2009-10-16 20:51] 实验7

assume cs:codesg

data 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'
  
  dd 16,22,382,1356,2390,8000,16000,24486,50065, 97479,140417,197514
  dd 345980,590827,803530,1...
阅读全文 | 评论次数(0) | 浏览次数(213) | 所属类型(汇编作业)

[2009-10-15 16:02] 实验6 将前4个字母改成大写

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,datasg
          mov ds,ax
                    
          mov b...
阅读全文 | 评论次数(1) | 浏览次数(366) | 所属类型(汇编作业)
页码数(2):  1  2