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

我的博客

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

[2011-04-17 17:12] 32位汇编子程序测试各语言入栈次序

源程序:
.386
.model flat,stdcall
option casemap:none
.code

        sub1 proc c var1,var2
                mov eax,var1
                mov ebx,var2
                ret
        sub1 endp
        sub2 proc pascal var1,var2
                mov eax,var1
                mov ebx,var2
                ret
        sub2 endp
        sub3 proc var1,var2
                mov eax,var1
                mov ebx,var2
                ret
        sub3 endp
start:
        ...
阅读全文 | 评论次数(0) | 浏览次数(575) | 所属类型(汇编小程序片段)

[2011-04-16 22:20] 刚在csdn论坛上回答的一个关于中断+ascii码判断的小程序

汇编编程问题:用键盘输入一个字符串x,若0<=x<=9,显示“ONE”,若A<=X<=Z,a<=x<=z,显示“two”,其他显示“three”

assume cs:code
data segment
        a db 'one $'
        b db 'two $'
        c db 'three $'
data ends
code segment
start:
        mov bx,data
        mov ds,bx
        mov dx,offset c
        mov ah,1
        int 21h
        call newline        
s:
        cmp al,'0'
        jb display
        cm...
阅读全文 | 评论次数(0) | 浏览次数(624) | 所属类型(汇编小程序片段)

[2011-04-16 20:16] 统计输入字符串中数字和字母的个数及字符串的总长度

MLENGTH = 128        
assume cs:code ds:data
data segment
BUFF DB MLENGTH
         DB ?
         DB MLENGTH dup(0)
MESS0 DB 'please input:$'
MESS1 DB 'Length =  $'
MESS2 DB 'x =  $'
MESS3 DB 'y =  $'
data ends

code segment
start:
        mov ax,data
        mov ds,ax
        mov dx,offset MESS0
        call displayString
        mov ah...
阅读全文 | 评论次数(0) | 浏览次数(568) | 所属类型(汇编小程序片段)

[2011-04-16 16:26] 用二进制形式显示从键盘输入的字符的ascii

assume cs:code
code segment
start:
        mov ah,1
        int 21h
        call newline
        mov bl,al  ;输入的字符的ascii码
        mov cx,8
next:
        shl bl,1
        mov dl,30h
        adc dl,0
        mov ah,2
        int 21h
        loop next
        mov dl,'B'
        mov ah,2
        int 21h
        mov ax,4c00h
        int 21h
newline proc
        
        push ax
        push dx
        mov dl,0dh ;回车符的...
阅读全文 | 评论次数(0) | 浏览次数(525) | 所属类型(汇编小程序片段)

[2011-04-16 15:26] 三个数排序,减少寄存器的使用

assume cs:code ds:data
data segment
db 12,56,34
data ends

code segment
start:
        mov ax,data
        mov ds,ax
        mov si,0
        
        mov al,ds:[si]
        cmp al,ds:[si+1]
        jae next1
        xchg al,ds:[si+1]
next1:
        cmp al,ds:[si+2]
        jae next2
        xchg al,ds:[si+2]
next2:
        mov [si],al
        mov al, ds:[si+1]
        cmp ...
阅读全文 | 评论次数(0) | 浏览次数(529) | 所属类型(汇编小程序片段)

[2011-04-16 14:52] 三个数的排序(练习指令专用)

assume cs:code ds:data
data segment
db 12,56,34
data ends

code segment
start:
        mov ax,data
        mov ds,ax
        mov si,0
        mov al,ds:[si]
        mov bl,ds:[si+1]
        mov cl,ds:[si+2]
        
        cmp al,bl
        jae next1
        xchg al,bl
        next1:
                cmp al,cl
                jae next2
                xchg al,cl
        next2:
                cmp bl,cl
                jae next3...
阅读全文 | 评论次数(0) | 浏览次数(508) | 所属类型(汇编小程序片段)

[2011-04-15 00:50] 14章实验14:访问CMOS RAM

点击查看原图
assume cs:code
data segment
db 9,8,7,4,2,0
db '// ::'
data ends

code segment
start:
        mov ax,data
        mov ds,ax
        mov ax,0b800h
        mov es,ax
        mov bx,0
        mov cx,6
        mov di,0

  s:
        push cx
        mov al,[bx]
        out 70h,al
        in al,71h
        
        mov ah,al
        mov cl,4
        shr ah,cl
        and al,00001111b
        
        ad...
阅读全文 | 评论次数(0) | 浏览次数(503) | 所属类型(汇编作业)

[2011-04-14 18:05] 13章实验13第一小题

点击查看原图
assume cs:code
data segment
        db 'welcome to masm!',0
data ends

code segment

start:
        mov ax,cs
        mov ds,ax
        mov si,offset start7c
        mov ax,0
        mov es,ax
        mov di,200h
        mov cx,offset over7c-offset start7c
        cld
        rep movsb

        mov word ptr es:[124*4],200h
        mov word ptr es:[124*4+2],0
                 ...
阅读全文 | 评论次数(0) | 浏览次数(537) | 所属类型(汇编作业)

[2011-04-14 16:46] 13章3小节,用7ch中断例程模仿实现loop指令功能,理解栈与中断的好例子

点击查看原图
assume cs:code
code segment
        start:
                mov ax,cs
                mov ds,ax
                mov si,offset start7c
                mov ax,0
                mov es,ax
                mov di,200h
                mov cx,offset over7c-offset start7c
                cld
                rep movsb

                mov word ptr es:[124*4],200h
                mov word ptr es:[124*4+2],0

                mov ax,0b800h
                mov es,ax
                mov di,160*1...
阅读全文 | 评论次数(0) | 浏览次数(564) | 所属类型(汇编作业)

[2011-04-14 13:31] 第十二章实验十二,改写0号中断程序

点击查看原图
assume cs:code

code segment
        start: mov ax,cs
                   mov ds,ax
                   mov si,offset do0
                   mov ax,0
                   mov es,ax
                   mov di,200h
                   mov cx,offset do0end-offset do0
                   cld
                   rep movsb
                   
                   mov word ptr es:[0*4],200h
                   mov word ptr es:[0*4+2],0
                   
                   mov ax,0
                ...
阅读全文 | 评论次数(0) | 浏览次数(554) | 所属类型(汇编作业)
『 查看更多文章 』