- [wbkyh] 需要用masm编译成exe程序(如1.exe),然后运行cmd,直接进入1.exe所在目录,使用de 07/29 09:28
- [a735279114] 错了~~怎么让运行完结果显示在显示器上啊 07/26 20:52
- [a735279114] 大哥让结果显示出来啊 07/26 20:51
[2011-08-09 17:57] 第10章 课程设计1 wbkyh——2011-08-09
调试结果见图。
DATA SEGMENT
dw 1975,1976,1977,1978,1979,1980,1981,1982 ;这里把年份也作为数值对待进行处理
dw 1983,1984,1985,1986,1987,1988,1989,1990
dw 1991,1992,1993,1994,1995,16,22,382
dw 1356,2390,8000,16000,24486,50065
dd 97479,140417,197514,345980 ;单独取出数值大于65535的数据进行处理
dd 590827,803530,1183000,1843000
dd 2...
DATA SEGMENT
dw 1975,1976,1977,1978,1979,1980,1981,1982 ;这里把年份也作为数值对待进行处理
dw 1983,1984,1985,1986,1987,1988,1989,1990
dw 1991,1992,1993,1994,1995,16,22,382
dw 1356,2390,8000,16000,24486,50065
dd 97479,140417,197514,345980 ;单独取出数值大于65535的数据进行处理
dd 590827,803530,1183000,1843000
dd 2...
阅读全文 |
评论次数(0) |
浏览次数(398) |
所属类型(汇编作业)
[2011-07-29 11:23] 实验10编写子程序3数值显示wbkyh2011-7-29
实验10编写子程序3数值显示wbkyh2011-7-29
assume cs:code
data segment
db 10 dup(0)
data ends
code segment
start:
mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
mov dh,8
mov dl,3
mov cl,2
call show_str
mov ax,4c00h
int 21h
dtoc:
mov di,0 ;用于子程序
mov dx,0 ;被除数无最高位
mov bx,1...
assume cs:code
data segment
db 10 dup(0)
data ends
code segment
start:
mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
mov dh,8
mov dl,3
mov cl,2
call show_str
mov ax,4c00h
int 21h
dtoc:
mov di,0 ;用于子程序
mov dx,0 ;被除数无最高位
mov bx,1...
阅读全文 |
评论次数(0) |
浏览次数(414) |
所属类型(汇编作业)
[2011-07-23 11:30] 实验10 编写子程序2解决出发溢出的问题wbkyh2011-7-23
实验10 编写子程序2解决出发溢出的问题wbkyh2011-7-23
assume cs:code
code segment
start:
mov ax,4240h
mov dx,000fh
mov cx,0ah
call divdw
mov ax,4c00h
int 21h
divdw:
push ax ;ax入栈备用
mov si,0 ;变量,暂存相关数据
mov ax,dx ;被除数高16位存入ax
mov dx,0 ;dx不再存放
div cx ;用被...
assume cs:code
code segment
start:
mov ax,4240h
mov dx,000fh
mov cx,0ah
call divdw
mov ax,4c00h
int 21h
divdw:
push ax ;ax入栈备用
mov si,0 ;变量,暂存相关数据
mov ax,dx ;被除数高16位存入ax
mov dx,0 ;dx不再存放
div cx ;用被...
阅读全文 |
评论次数(0) |
浏览次数(389) |
所属类型(汇编作业)
[2011-07-23 09:01] 实验10编写子程序1显示字符串wbkyh2011-7-23
实验10 编写子程序1显示字符串wbkyh2011-7-23
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 ax,0b800h
mov es,ax ;定义显存段地址
dec dh ...
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 ax,0b800h
mov es,ax ;定义显存段地址
dec dh ...
阅读全文 |
评论次数(0) |
浏览次数(378) |
所属类型(汇编作业)
[2011-07-04 16:20] 检测点10.5——wbkyh2011-7-4
检测点10.5——wbkyh2011-7-4
(1) 下面的程序执行后,ax中的数值为3?(注意:用call指令的原理来分析,不要再debug中但不跟踪来验证你的结论。对于此程序,在debug中单步跟踪的结果,不能代表cpu的实际执行结果。)
Assume cs:code
Stack seqment
Dw 8 dup(0)
Stack ends
Code segment
Start:
mov ax,stack
Mov ss,ax
Mov sp,16
Mov ds,ax
Mov ax,0 解答:ax=0
Call word pt...
(1) 下面的程序执行后,ax中的数值为3?(注意:用call指令的原理来分析,不要再debug中但不跟踪来验证你的结论。对于此程序,在debug中单步跟踪的结果,不能代表cpu的实际执行结果。)
Assume cs:code
Stack seqment
Dw 8 dup(0)
Stack ends
Code segment
Start:
mov ax,stack
Mov ss,ax
Mov sp,16
Mov ds,ax
Mov ax,0 解答:ax=0
Call word pt...
阅读全文 |
评论次数(0) |
浏览次数(386) |
所属类型(汇编作业)
[2011-07-04 11:25] 检测点10.4——wbkyh2011-7-4
检测点10.4——wbkyh2011-7-4
下面的程序执行后,ax中的值为多少
内存地址 机器码 汇编指令
1000:0 b80600 mov ax,6
1000:3 ff d0 call ax
1000:5 40 inc ax
1000:6 58 mov bp,sp
add ax,[bp] ([bp]即call命令入栈后的ip,ax=06h+05h=0bh)
解答:call ax为段间转移指令,其操作相当...
下面的程序执行后,ax中的值为多少
内存地址 机器码 汇编指令
1000:0 b80600 mov ax,6
1000:3 ff d0 call ax
1000:5 40 inc ax
1000:6 58 mov bp,sp
add ax,[bp] ([bp]即call命令入栈后的ip,ax=06h+05h=0bh)
解答:call ax为段间转移指令,其操作相当...
阅读全文 |
评论次数(0) |
浏览次数(339) |
所属类型(汇编作业)
[2011-07-04 11:02] 检测点10.3——wbkyh2011-7-4
检测点10.3——wbkyh2011-7-4
下面的程序执行后,ax中的值为多少
内存地址 机器码 汇编指令
1000:0 b80000 mov ax,0
1000:3 9a09000010 call far ptr s
1000:8 40 inc ax
1000:9 58 s:pop ax (ax=08h,即call命令入栈后的ip)
add ax,ax (ax=08h+08h=10h)
...
下面的程序执行后,ax中的值为多少
内存地址 机器码 汇编指令
1000:0 b80000 mov ax,0
1000:3 9a09000010 call far ptr s
1000:8 40 inc ax
1000:9 58 s:pop ax (ax=08h,即call命令入栈后的ip)
add ax,ax (ax=08h+08h=10h)
...
阅读全文 |
评论次数(0) |
浏览次数(376) |
所属类型(汇编作业)
[2011-07-04 10:03] 检测点10.2——wbkyh2011-7-4
检测点10.2——wbkyh2011-7-4
下面的程序执行后,ax中的数值为多少
内存地址 机器码 汇编指令
1000:0 b80000 mov ax,0
1000:3 e80100 call s
1000:6 40 inc ax
1000:7 58 s:pop ax
解答:call指令操作为(1)(sp)=(sp)-2 ((ss)*16+(sp))=(ip)(2)(ip)=(ip)+16位位移,因此执行call s后,当前ip入栈为0006h,然后执行s标号处指令,即出栈操作,则ax=06h。...
下面的程序执行后,ax中的数值为多少
内存地址 机器码 汇编指令
1000:0 b80000 mov ax,0
1000:3 e80100 call s
1000:6 40 inc ax
1000:7 58 s:pop ax
解答:call指令操作为(1)(sp)=(sp)-2 ((ss)*16+(sp))=(ip)(2)(ip)=(ip)+16位位移,因此执行call s后,当前ip入栈为0006h,然后执行s标号处指令,即出栈操作,则ax=06h。...
阅读全文 |
评论次数(0) |
浏览次数(357) |
所属类型(汇编作业)
[2011-07-04 09:41] 检测点10.1——wbkyh2011-7-4
检测点10.1——wbkyh2011-7-4
补全程序,实现从内存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,0h
push ax
retf
conde ends
end start
解答:因为retf 指令含义为(1)pop ip (2) pop cs,根据堆栈先进后出的特点,应该将1000H先...
补全程序,实现从内存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,0h
push ax
retf
conde ends
end start
解答:因为retf 指令含义为(1)pop ip (2) pop cs,根据堆栈先进后出的特点,应该将1000H先...
阅读全文 |
评论次数(0) |
浏览次数(347) |
所属类型(汇编作业)
[2011-06-28 17:37] 实验9 根据材料编程
assume cs:codesg
data segment
db 'welcome to masm!'
data ends
codesg segment
start:
mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov bx,0
mov di,0
mov cx,16
s: mov al,[bx]
mov ah,02h
mov es:[720h+di],ax
mov al,[bx]
mov ah,24h
mov es:[7c0h+di],ax
mov al,[bx]
...
data segment
db 'welcome to masm!'
data ends
codesg segment
start:
mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov bx,0
mov di,0
mov cx,16
s: mov al,[bx]
mov ah,02h
mov es:[720h+di],ax
mov al,[bx]
mov ah,24h
mov es:[7c0h+di],ax
mov al,[bx]
...
阅读全文 |
评论次数(3) |
浏览次数(506) |
所属类型(汇编作业)
『 查看更多文章 』