源程序:
.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:
...


- [13697471313] 这书怎么会错,自己没搞清楚总说书错!真是的! 05/06 09:34
- [游客] mov bx,100(64h),好像书也是错的 04/16 19:55
- [游客] 在debug 里是默认十六进的,在源程序是默认10进制的,加多一个h就、行 04/16 19:52
- [ghosteye] 这样子应该可以 inc cx 或者 mov cx,1 04/16 15:30
- [ghosteye] 没有错,我还没有注意看,你够仔细的 04/16 15:26
- [billy_asm] 如果inc bx 能在jcxz ok之前,应该没有问题的. 题目却相反. 04/16 15:13
- [billy_asm] 对不起,上一次我也没看清ok标号后的dec bx 如果没有它,jcxz ok是没有问题的. 因为 04/16 15:11
- [ghosteye] and cl,11111111b ->jcxz ok 04/14 12:19
- [ghosteye] 欢迎加入汇编群:25617704 04/13 19:41
- [ghosteye] 欢迎加入汇编群:25617704 04/12 19:56
[2011-04-17 17:12] 32位汇编子程序测试各语言入栈次序
阅读全文 |
评论次数(0) |
浏览次数(810) |
所属类型(汇编小程序片段)
[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...
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) |
浏览次数(705) |
所属类型(汇编小程序片段)
[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...
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) |
浏览次数(643) |
所属类型(汇编小程序片段)
[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 ;回车符的...
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) |
浏览次数(569) |
所属类型(汇编小程序片段)
[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 ...
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) |
浏览次数(584) |
所属类型(汇编小程序片段)
[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...
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) |
浏览次数(549) |
所属类型(汇编小程序片段)
页码数(1):
1