三次修改(简化):
assume cs:codesg,ds:data,ss:table
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,140...
- [kanwangxue] 如果是文字的,不是特别好啊,体力活,如果文字还加点动画,那就必须顶了。 01/15 01:10
- [kanwangxue] 必须顶啊。 01/15 00:54
- [ltoiii] 既然是实现loop功能,是否要考虑s和se标号? mov bx,offset s - offset 12/09 12:09
- [xiaoyao2012] 正确 11/01 15:33
- [xuer2016] 又找到2条被我忽视的地方: 1.PUSH 和 POP 针对字单元 2.POP 不能是CS 10/26 10:57
- [xuer2016] 学习了 我书写不规范,16进制字母前不加0,后面不加H,以后要注意了。。。 10/26 10:51
- [xuer2016] 来老师这学习下 10/26 10:31
- [youthangel] 不妙,CPU的利用率一下子就上去了。还好我的处理器不是太弱,35%左右的利用率。建议博主在修改一下 10/20 08:23
- [fpamc] 在我心里她就是我的女神。 10/02 08:58
- [newpeople] 你女朋友用得了简直就是一个女神…… 10/01 08:10
- [99998888] 请您指点一下如何找到会ASSEMBLER 语言的翻译,翻译成中文或英文。我的QQ ; 9097815 07/25 09:56
- [jeremy] 我觉得你学习的挺好,可以加你扣扣吗?我的469614823 08/07 14:46
- [zhangbo0805] 哈哈, 你好呀!很希望认识你呀!我发现你学习的积极性很高!正想向您学习呢! 07/31 23:31
- [tomato] 知道了,排得还挺满。 05/29 16:35
- [tomato] 现在学习情况怎么样?在做课设二还是什么? 05/29 10:41
- [tomato] 你的留言收到了。 05/05 23:51
- [fpamc] 开始学习c咯! 05/03 21:40
- [fpamc] 居然不能发博客了……! 04/22 21:03
- [tomato] 你相册中的游戏界面我看过了,非常好,界面很漂亮,很有创造力。博主,很有潜力。加油,一定能把这个游戏做 04/20 23:46
- [fpamc] 忙了半个月,不在家,没时间学习汇编。 但是在途中想到了一个有史以来最难的程序。对于刚学完9章的我。 04/13 20:56
[2012-04-01 06:42] 第八章作业(续)
阅读全文 |
评论次数(2) |
浏览次数(125) |
所属类型(汇编作业)
[2012-04-01 06:40] 第八章作业
第八章
实验七 寻址方式在结构化数据访问中的应用。
系列一:
原版:
assume cs:codesg,ds:data,ss:table
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...
实验七 寻址方式在结构化数据访问中的应用。
系列一:
原版:
assume cs:codesg,ds:data,ss:table
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...
阅读全文 |
评论次数(1) |
浏览次数(142) |
所属类型(汇编作业)
[2012-03-25 19:56] 第七章笔记
第七章 更灵活的定位内存地址的方法
and指令:逻辑与指令,按位进行与运算。
该指令可以将操作对象的相应位设为0,其他位不变。
or指令:逻辑或指令,按位进行或运算。
该指令可以将操作对象的相应位设为1,其他位不变。
ascll码:08退格,0A换行,0D回车,20空格,30为0,41为A,61为a
在汇编程序中,用‘……’的方式指明数据是以字符的形式给出的,编译器将它们转化为相对应的ascll码。
几种定位内存地址的方法(可称为寻址方式):
1. [idata]用一个常量来表示地址,可用于直接定位一个内存单元;
2. [bx]用一个变量来表示内存地址,可...
and指令:逻辑与指令,按位进行与运算。
该指令可以将操作对象的相应位设为0,其他位不变。
or指令:逻辑或指令,按位进行或运算。
该指令可以将操作对象的相应位设为1,其他位不变。
ascll码:08退格,0A换行,0D回车,20空格,30为0,41为A,61为a
在汇编程序中,用‘……’的方式指明数据是以字符的形式给出的,编译器将它们转化为相对应的ascll码。
几种定位内存地址的方法(可称为寻址方式):
1. [idata]用一个常量来表示地址,可用于直接定位一个内存单元;
2. [bx]用一个变量来表示内存地址,可...
阅读全文 |
评论次数(2) |
浏览次数(128) |
所属类型(汇编笔记)
[2012-03-25 19:55] 第七章作业
第七章
实验六
(1)将课程中所有讲解过的程序上机调试,用DEBUG跟踪其执行过程,并在过程中进一步理解所讲内容。
答:略过表述,已经多次调试。
(2)编程,完成问题7.9中的程序。(编程,将datasg段中每个单词的前4个字母改为大写字母。)
assume cs:codesg,ds:datasg,ss:stacksg
datasg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. modify '
datasg ...
实验六
(1)将课程中所有讲解过的程序上机调试,用DEBUG跟踪其执行过程,并在过程中进一步理解所讲内容。
答:略过表述,已经多次调试。
(2)编程,完成问题7.9中的程序。(编程,将datasg段中每个单词的前4个字母改为大写字母。)
assume cs:codesg,ds:datasg,ss:stacksg
datasg segment
db '1. display '
db '2. brows '
db '3. replace '
db '4. modify '
datasg ...
阅读全文 |
评论次数(1) |
浏览次数(136) |
所属类型(汇编作业)
[2012-03-25 10:41] 一道同学出的题
RT,测试自己的题,写着玩。自娱自乐。
将1~100的值,存储到2000:0的起始位置,然后从2000:结尾处,查询100~1的值做累加,高位存储在al中,低位存储在bl中。
assume cs:codesg
codesg segment
mov ax,2000h
mov ds,ax
mov si,0
mov dx,1
mov cx,100
s:
mov [si],dl
inc si
inc dx
loop s
mov ax,0
mov si,63h
mov cx,100
s0:
mov bl,[si]
mov bh,0
add ax,bx ...
将1~100的值,存储到2000:0的起始位置,然后从2000:结尾处,查询100~1的值做累加,高位存储在al中,低位存储在bl中。
assume cs:codesg
codesg segment
mov ax,2000h
mov ds,ax
mov si,0
mov dx,1
mov cx,100
s:
mov [si],dl
inc si
inc dx
loop s
mov ax,0
mov si,63h
mov cx,100
s0:
mov bl,[si]
mov bh,0
add ax,bx ...
阅读全文 |
评论次数(1) |
浏览次数(245) |
所属类型(自娱自乐)
[2012-03-14 21:24] 第六章笔记
第六章 包含多个段的程序
在操作系统允许的情况下,程序可以取得任意容量的空间。
程序取得所需空间的方法有两种:1.加载程序的时候为程序分配;2.程序在执行的过程中向系统申请。
“dw”(define word)的含义是定义字形数据(数据之间以逗号分隔),也可以说开辟内存空间。
“db”的含义是定义字节型数据,与“dw”功能相同。
“dd”的含义是定义dword(double word,双字)型数据。
end出了通知编译器程序结束外,还可以通知编译器程序的入口在什么地方。
只要在源程序中用“end标号”,cpu就从我们希望的地方开始执行。
这样的程序的框架:
assum...
在操作系统允许的情况下,程序可以取得任意容量的空间。
程序取得所需空间的方法有两种:1.加载程序的时候为程序分配;2.程序在执行的过程中向系统申请。
“dw”(define word)的含义是定义字形数据(数据之间以逗号分隔),也可以说开辟内存空间。
“db”的含义是定义字节型数据,与“dw”功能相同。
“dd”的含义是定义dword(double word,双字)型数据。
end出了通知编译器程序结束外,还可以通知编译器程序的入口在什么地方。
只要在源程序中用“end标号”,cpu就从我们希望的地方开始执行。
这样的程序的框架:
assum...
阅读全文 |
评论次数(0) |
浏览次数(343) |
所属类型(汇编笔记)
[2012-03-14 21:22] 第六章作业(5)
(6)程序如下,编写code段中代码,用PUSH指令将A段中的前8个字型数据,逆序存储到B段中。
push版:
assume cs:code
a segment
dw 1,2,3,4,5,6,7,8,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends
b segment
dw 0,0,0,0,0,0,0,0
b ends
code segment
start:
mov ax,a
mov ds,ax
mov ax,b
mov ss,ax
mov sp,10h
mo...
push版:
assume cs:code
a segment
dw 1,2,3,4,5,6,7,8,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends
b segment
dw 0,0,0,0,0,0,0,0
b ends
code segment
start:
mov ax,a
mov ds,ax
mov ax,b
mov ss,ax
mov sp,10h
mo...
阅读全文 |
评论次数(1) |
浏览次数(177) |
所属类型(汇编作业)
[2012-03-14 21:20] 第六章作业(4)
(5)程序如下,编写code段中代码,将a段和b段中的数据依次相加,将结果存到C段中。
第一种:
assume cs:code
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
c segment
db 0,0,0,0,0,0,0,0
c ends
code segment
start:
mov ax,a
mov ds,ax
mov ax,b
mov es,ax
mov ax,c
mov ...
第一种:
assume cs:code
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
c segment
db 0,0,0,0,0,0,0,0
c ends
code segment
start:
mov ax,a
mov ds,ax
mov ax,b
mov es,ax
mov ax,c
mov ...
阅读全文 |
评论次数(7) |
浏览次数(212) |
所属类型(汇编作业)
[2012-03-14 21:18] 第六章作业(3)
(3)将下面的程序编译连接,用Debug加载、跟踪,然后回答问题。
assume cs:code,ds:data,ss:stack
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]
mov ax,4c00h
...
assume cs:code,ds:data,ss:stack
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]
mov ax,4c00h
...
阅读全文 |
评论次数(1) |
浏览次数(329) |
所属类型(汇编作业)
[2012-03-14 21:16] 第六章作业(2)
(2)将下面的程序编译连接,用Debug加载、跟踪,然后回答问题。
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h
data ends
stack segment
dw 0,0
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds...
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h
data ends
stack segment
dw 0,0
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,data
mov ds,ax
push ds...
阅读全文 |
评论次数(11) |
浏览次数(304) |
所属类型(汇编作业)