

- [游客] 博主真是我偶像啊,精神可嘉,值得学习!!! 01/30 01:53
- [游客] 不错,但还是有点浑 04/18 21:30
- [游客] 楼主的学习精神可佳 在下佩服佩服 希望你有更多好文章发表 让我们大家共同进步 03/19 23:48
- [游客] 很好!! 这种精神值得学习 发扬! 11/28 08:52
- [nono] 我刚学汇编,很有帮助,写了。。。 10/31 19:33
- [游客] 谢谢了,哈 04/18 17:02
- [游客] 很好!对我很有帮助! 03/11 21:51
- [游客] 大家共同促进中国的计算机事业吧! 02/27 19:41
- [gjcqfdy] 我也在用emu8086 由于在做实验七的时候发现emu8086好像不支持 bx.idata[si]形 02/16 00:15
- [laoshu0824] 太好了,,,我很仔细的读了王爽老师的第一章,,不过看了这篇文章侯,,发现有几个知识点我还是没有注意到 12/15 15:42
- [yc2010] 这个问题是实验16中的代码不懂。 table: dw sub1,sub2,sub3,sub4 09/07 21:55
- [lxc345] 谢谢!!! 希望以后多多指教啊. 05/06 16:07
[2010-01-14 16:46] 扫雷
STACK SEGMENT STACK
DB 10H DUP (0)
STACK ENDS
DATA SEGMENT
MESSAGE DB "YOU ARE BOMED !! $"
MESSAGE1 DB "GAME OVER !! $"
MESSAGE3 DB "THE REMAIN BOME IS : $"
MESSAGE4 DB "WOULD YOU LIKE TO START AGAIN? (Y\N) $"
XX0 ...
[2008-11-28 23:44] 最后的作业--课程设计二
就来汇编逛了一下,看见大学生程序训练营,仔细看了一下内容,觉得课程安排的很不错,正好我也可以重新读一遍,唉,可是时间确实太忙,为了完成课程设计二,就先看了后面七章,把后面实验重新写一遍(也是为了巩固吧,感觉跟看第一遍没什么区别),唉学的不扎实啊。希望各位不要像我一样,又重新学,浪费时间啊。
用了将近一个星期才完成,今天终于写出来了,其实也没有想像中的那么难,只要坚持下去就一定会做出来的。但是课程设计二可能用到一些书上没有提到的内容,这可能也是王爽老师的刻意让我们自己去...
[2008-07-06 18:53] 检测点:2.1-2.2-2.3
2.1
2.1.1.
16位寄存器可视为由高8位与低8位两个不相干的8位寄存器组成。因此当单独使用时高低8位寄存器时,之间数值无联系不存在进位等问题。如AX=AH组连AL,对AH、AL的操做,只是影响AX的高低8位数值,如AX=ABCD,无论对AH怎样操做,AX变化的只是四位中的前两位**,即AX=**CD。同样,AL操做结果是AX=AB**。
2.1.2.
目前只学了传值MOV与累加ADD
MOV AX,2
ADD AX,AX
ADD AX,AX
ADD AX,AX
结果在AX中就是2*2*2*2。
2.2
2.2.1:
...
[2008-07-09 15:16] 课程设计2, 欢迎大家指导交流!
;说 明: 感谢王爽老师写了一本经典学习汇编的书!
; 个人认为这个课程,王爽老师的意思是让我们不要局限于书中知识,而为了完成所需功能,学习收集资料并利用的目的吧!
; 此课程设计提供给和我一样的初学者参考,功力有限,不足的地方,多多指点交流!
;功 能: 从软盘启动实现: 1. 重新启动计算机
; 2. 从硬盘引导现有系统
; 3. 显示时间
; 4. 设置CMOS时间
;日 期:2008-07-09
assume cs:code,ds:data
data segment
data ends ...
[2008-06-27 10:58] 学习笔记 第8章 数据处理的两个基本问题
1, 两个基本问题:处理的数据在什么地方?要处理的数据有多长?这两个问题,在机器指令中必须给以明确或隐含的说明,否则计算机就无法工作。
2, 基址和变址寄存器:bx,bp,si,di
①在8086CPU中,只有这4个寄存器可以用在“[…]”中来进行内存单元的寻址。
比如下面的指令都是正确的:
mov ax, [bx] ;寄存器间接寻址方式
mov ax, [bx+si] ; 基址变址寻址方式,也可写成mov ax, [bx][si]
mov ax, [bp] ...
[2008-06-23 21:08] 检测点6.1(第二版)
2, 下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,数据的传送用栈来进行,栈空间设置在程序内。完成程序:
assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
dw 0,0,0,0,0
start:
mov ax,cs ;cs为所填第一空
mov ss,ax
mov sp,18h ;此条指令为所填第二空
mov ax,0
mov ds,ax
...
[2008-06-26 09:24] 修改int 1ch 实现pe2定时自动存盘[转}
--------------------------------------------------------------------------------
DOS操作系统的int 1ch是一个定时器信号中断,在每次系统时钟信号(每秒18.206481次)
出现时都执行由这个中断向量所指向的程序代码。系统初始化时,BIOS将这个中断向量指向
iret指令。因此int 1ch发生时,马上返回原处,它什么事也不做,借此我们可以修改它,用自
己的int 1ch处理程序替换这个BIOS的伪中断处理程序,实现pe2的定时自动存盘。
pe2...
[2007-10-12 19:08] 汇编中的宏指令
汇编中使用宏指令的过程如下:
1.定义。
宏指令的定义格式为:
宏指令名 macro [形参1,形参2...]
......
......(宏内容)
endm
2.宏指令的调用。
宏指令的调用格式:
宏指令名 [形参1,形参2....]
3.宏指令的展开。
在代码中,调用宏指令的地方,会在程序编译的时候根据给定参数自动替换成宏指令的内容。
需要注意一下几点:
(1)宏指令的参数可有可无。
(2)宏指令的定义必须在调用之前。...
[2008-06-21 23:05] 南京工程学院 微机原理课程设计
1.课程设计应达到的目的
运用<<微机原理及应用B>>课程等知识,根据题目要求进行软硬件系统的设计和调试,从而加深对本课程知识点的理解,使学生综合应用知识能力、设计能力、调试能力及报告撰写能力等显著提高。
本课题要求掌握BIOS中断的10号功能调用和DOS中断的01号、02号等子功能,理解接收键盘输入和使显示器输出的方法,理解MS-DOS主要系统功能及BIOS功能以软件中断形式的实现模式。
2.课程设计题目及要求
一.题目
计算器程序设计
二.设计要求:
编写一个程序,能从键盘上读入数据,并...
[2008-06-25 08:08] 转载文章:保护模式存储器寻址(来自《汇编语言程序设计》课程教案)
从80286起,就引出了保护模式的存储器寻址,其直接原因:首先是实模式的寻址空间为1MB,8086/8088本身只有1 MB地址空间,这显然是不够用的,80286提供了16 MB,80386及其后继机型均提供4 GB或更多的地址空间,那么系统要解决的首要问题就是如何寻址;其次,引出保护模式的更重要原因在于它使微机系统能支持多任务处理。
随着微机被广泛地使用,要求系统能提供多任务处理功能,即多个应用程序能同时在同一台计算机上运行,而且它们之间必须相互隔离,使一个应用程序中的缺陷或故障不会破坏系统,也不会影响其他应用程序的运行...
[2008-05-28 16:10] 第十章检测题做了3遍没通过,郁闷了
内存地址 机器码 汇编指令
1000:0 b8 00 00 mov ax,0
1000:3 9a 09 00 00 10 call far ptr s
1000:8 40 inc ax
1000:9 58 s:pop ax
add ax,ax
pop bx
add ax,bx
1、 1006h
2、 1010h
3、 0020h
4、 000ch
分析:首先【call far ptr 标号】实现段间转移,执行此指令时相...
[2007-10-21 12:34] 转载文章:存储器(来自“百度百科”)
引言:
在计算机的组成结构中,有一个很重要的部分,就是存储器。存储器是用来存储程序和数据的部件,对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存储器(简称内存).内存在电脑中起着举足轻重的作用。
内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE),其中RAM是最重要的存储器,主要存储正在运行的程序和要处理的数据。S(SYSNECRONOUS)DRAM 同步动态随机存取存储器:SDRAM为...
[2008-06-19 21:41] 栈问题
那么往栈里放数据,当满栈时,SP=0. 但我断续放数据,那么这些数据不是把第一轮放的数据复盖了吗。这样的话也就不存在满栈的情况了。因为都在栈里面转。只是后面的数据把前面的覆盖。...
[2008-06-10 00:55] 实验16
code segment
setscreen: jmp short set
table dw sub1,sub2,sub3,sub4 ;待安装的中断例程
set: push bx
;这些都是书上有的
cmp ah,3
ja sret
mov bl,ah
mov bh,0
add bx,bx
call word ptr table[bx]
sret:pop bx ...
[2007-09-29 08:51] 为什么学好计算机就必须学好汇编?
汇编是干什么的?为什么要学好汇编?不学不行吗?要学好计算机非得学好汇编吗?乍看到这些问题,真是一头雾水。学好汇编会有什么好处?学好汇编老板就给你涨工资?还是学好汇编上天就会赐给你个大美女?还是政府就会给你解决住房问题?真是搞不懂。不过倒可以肯定头脑没大问题的人不会选择上面三个答案。那到底是为什么呢?是啊,停留在问题的表面似乎永远找不到答案。我们试图找一下答案,我们从这里入手,学习过汇编的人会了解计算机的底层工作方式,他会了解到cpu、内存、硬盘等硬件设备是如果协调地工作在一起,数据从哪里转移到哪里,在哪里被运算,又在哪里被存储起来等等等等。总之,计算机在你的...
[2008-05-19 16:53] 对实验3的思考
codesg segment
mov ax,2000h
mov ss,ax
mov sp,0
add sp,4
pop ax
pop bx
push ax
push bx
pop ax
pop bx
mov ax,4c00h
int 21h
codesg ends
end
用debug 跟踪的执行过程,到执行pop ax就弹出错误的对话框。为什么呢?pop的步骤如下:
pop ax的执行过程,有以下两步完成
1.将ss:sp指向的内存单元处的数据送入ax中;
2.sp=sp+2,ss:sp指向当前栈顶下面的单元,以当前栈顶...
[2008-05-14 09:56] 【转贴】病毒基础系列
病毒没有什么可怕的,也并不象想像中的复杂,玩汇编的人如果没有看过病毒?简直是白活一遭...病毒就象是双刃剑,恶意使用就会带来恶果,我本人对于此类行为深恶痛绝!我们研究不是为了破坏而是为了知己知彼,另外病毒中确实也有很多高超的技巧值得我们学习,这才是我们的目的所在,我绝没有教唆人犯罪的意图而且就我的水平来讲也远达不到.
在研究病毒之前有几项基础知识要了解:
1)ring0的获取,可参见我翻译的一篇ring0的文章,另外这些资料internet上也很多.
2)Seh的知识,可参见我写的<>
3)PE结构的知识,ZouDan大侠...
[2007-12-29 10:20] 我的汇编学习资料(电子书)
《汇编语言》 王爽 著 清华大学出版社 2003
内容简介:本书采用了独特的教学理念,完全按照循序渐进的原则写成。学习是一个动态的过程。本书的重要宗旨就是对学习的过程进行引导。因此,作者打破了传统教材按照静态的知识结构对内容进行组织的体例,在其中构造了一个贯穿始终的可以步步深入的学习线索,使得读者可以真正地深入理解机器运行程序的机理和获得高质量的底层编程体验,为计算机科学相关课程学习和研究打下坚实的理论...
[2007-12-26 15:14] 第六章实验五学习心得
;2007-12-26 11:48
assume cs:code,ds:data,ss:stack
stack segment
dw 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
stack ends
data segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h,0654h
data ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16 ...
[2008-05-11 20:40] 对教材P273倒数第4行注释的重新理解
call dword ptr cs:[200h];此中断例程执行时,(cs)=0
当学习到此处时,虽然知道中断过程由CPU硬件自动完成,也知道做了哪几个步骤的工作(取中断类型码、Flag入栈、将IF和TF置0、CS和IP入栈、根据中断类型码查中断向量表设置CS和IP),但具体的执行过程(没有看到具体的指令)在我头脑里有些概念还是比较模糊,以至于对(cs)当时为何为0感到迷惑,通过重新复习12及15章节的内容,有了新的理解如下:
中断向量表是在内存中存放的,对于8086PC机,中断向量表指定放在内存地址0处。从内存0000:0000到0000:...