CPU的三种工作模式:
1.实模式:工作方式相当于8086
例如:电脑从开机BIOS自检到WINDOWS XP启动之前,CPU工作于实模式下.
2.保护模式:提供支持多任务环境的工作方式,建立保护机制
例如:Windows XP启动后,将CPU切换到保护模式下工作,以便很好地运行Windows这种多任务系统.
3.虚拟8086模式:从保护模式切换到其中一种8086工作方式
例如:在Windos XP上点击开始菜单,进入所有程序项附件中的C:\命令提示符,这就切换至虚拟8086方式
这种方式使用户可以很方便地在保护模式下运行一个或多个原8086程序
---------...
- [游客] 表示每次运行到cx=2的时候就不能再往下一步进行了! 谁能告诉我是哪里的问题? 06/11 23:38
- [游客] 这是C下的么?main中的 int c[]={6,7,8,9} ; int *p = c; 08/06 15:33
- [游客] 实现队列?呵呵,以前学C的时候也弄过队,循环队列等东西,锻炼了很多思维逻辑上的东西。 博主可以自己 08/06 15:30
- [maxm] 这实验没难度,关键是细心 几个易出错的地儿我都在注释中做了标记 希望大家别跟我一样犯糊涂 (*^ 06/04 20:58
- [maxm] 感谢fangyugirl分享心得 05/08 18:47
- [fangyugirl] 看到你说你在这章徘徊了两周,我跟你差不多的。我是做BIOS的,上班时没有事情了就看书,做课程设计一时 04/23 13:44
- [maxm] 哎,没有自己电脑。 03/19 20:57
- [游客] 然后继续编程 呵呵 03/18 20:56
- [游客] 我被卡在这一章了,就因为这个实验。 03/18 15:31
- [maxm] 最后加了点注释,程序改动如下: ;------------------------------ 03/13 15:52
[2008-03-20 23:33] Intel CPU的工作模式
[2008-01-18 11:21] 实验14 实现了动态显示时间的功能,按 'q' 键退出
;该程序 实现了动态显示时间的功能,按 'q' 键退出。
assume cs:code
code segment
s1: db 9,8,7,4,2,0
s2: dw 0,0,0,0,0,0
s3: db '/','/',' ',':',':',' '
start:
mov ax,cs
mov ds,ax
mov bx,offset s1
mov si,offset s2
mov cx,6
reads: push cx
...
assume cs:code
code segment
s1: db 9,8,7,4,2,0
s2: dw 0,0,0,0,0,0
s3: db '/','/',' ',':',':',' '
start:
mov ax,cs
mov ds,ax
mov bx,offset s1
mov si,offset s2
mov cx,6
reads: push cx
...
[2008-04-03 11:36] 【课程设计2必备】一个简装版的Virtual PC+仿真虚拟软驱的下载地址(附说明)
《汇编语言》的第十七章最后的实验和课程设计二,需要进行软盘的读写,而且有些功能需要在实dos下实现。可惜,现在很少人装软驱和dos了,有些兄弟因此放弃了锻炼自己的机会。现在好了,我们可以用一个虚拟机+仿真软驱就能继续完成我们《汇编语言》最后的重要实验--课程设计二了。呵呵。本人就是用的这个,感觉不错,推荐给广大学习汇编的兄弟姐妹们。
提供一个:
1、仿真虚拟软驱
2、Virtual PC(注:虚拟机软件名称)
的下载地址,内含详细的安装及使用说明,欢迎大家下载!
http://pickup.mofile.com/0667815817317830...
提供一个:
1、仿真虚拟软驱
2、Virtual PC(注:虚拟机软件名称)
的下载地址,内含详细的安装及使用说明,欢迎大家下载!
http://pickup.mofile.com/0667815817317830...
阅读全文 |
作者:xiaochong |
评论次数(72) |
浏览次数(8116)
[2008-10-15 00:54] 国际:10个有趣的开源软件分支
开源软件分支的一个好处是能够采取应用程序的代码基础并将它在新的方向上进行开发、创新。这是大多人都知道的,称之为分支,在开源社区是很常见的。例如,许多Linux的发行可追溯到任何的Dbian,Fedora或Slackware的。
许多开源软件分支在目前一些流行的项目中使用。我们认为这是很有意思的事情,来看看历史上的一些软件,找出他们为什么会比原生软件受欢迎。
我们寻找软件分支常常被看作是浪费开发资源,以及不被视为是好事的原因。从下面的例子中我们可以清楚地看到有时产生软件分支是有好处的,分支后的应用比原意要开发的程序更受欢迎。
Ubuntu from Debian
产品...
许多开源软件分支在目前一些流行的项目中使用。我们认为这是很有意思的事情,来看看历史上的一些软件,找出他们为什么会比原生软件受欢迎。
我们寻找软件分支常常被看作是浪费开发资源,以及不被视为是好事的原因。从下面的例子中我们可以清楚地看到有时产生软件分支是有好处的,分支后的应用比原意要开发的程序更受欢迎。
Ubuntu from Debian
产品...
[2007-11-03 16:48] 我收集的专家喊话
来这个网站有一段时间了。一直在关注网站里各位专家大侠们,希望能够在他们那里学一些东西,开始是想更多的学一些技术因为在学校里学的东西太浅薄了,甚至不知道该怎么去学那些课。但是后来,随着渐渐的和他们交流,我发现,他们对学习、研究、做人甚至是社会都有很见地,而且诲人不倦,真是让我感动。我知道,就是那天上网时的轻轻一点,使我来到这里,使我受到了很大启发,可以说,他们改变了我的生活学习乃至人生观,有句老话说:“大恩不言谢”,但是在这里我还是要向各位大侠们说声谢谢,祝福网站越办越好,我会常常来这里跟大家交流,跟大家一起学习,进步,也希望更多的网友能来这里。
大家交流啊,你们都很优秀,很有思想,向你们...
大家交流啊,你们都很优秀,很有思想,向你们...
阅读全文 |
作者:starrynight |
评论次数(13) |
浏览次数(1988)
[2008-01-11 20:07] 历史渊源闲话操作系统[转]
历史渊源:闲话操作系统
出处:天涯虚拟社区
最近在看Eric.Raymond写的一本《Unix编程艺术》,里面讲了不少计算机的、特别是Unix的历史渊源,出于个人爱好,我对电脑的发展史一向比较关心,也看过一点相关的书本、资料,于是就当是作笔记也好,写学习总结也好,把我所知道的关于计算机操作系统的历史拉拉杂杂地写下了一点文字(如果有人喜欢看,以后也会写些其他方面的),想到坛子里也许还有同好,就贴了上来,欢迎交流,欢迎拍砖(如能有根有据地拍,那就更求之不得:)。
闲话少说,开练。
关于操作系统的定义,我没有找到一个权威的解释,基本上可以说,它是一个...
出处:天涯虚拟社区
最近在看Eric.Raymond写的一本《Unix编程艺术》,里面讲了不少计算机的、特别是Unix的历史渊源,出于个人爱好,我对电脑的发展史一向比较关心,也看过一点相关的书本、资料,于是就当是作笔记也好,写学习总结也好,把我所知道的关于计算机操作系统的历史拉拉杂杂地写下了一点文字(如果有人喜欢看,以后也会写些其他方面的),想到坛子里也许还有同好,就贴了上来,欢迎交流,欢迎拍砖(如能有根有据地拍,那就更求之不得:)。
闲话少说,开练。
关于操作系统的定义,我没有找到一个权威的解释,基本上可以说,它是一个...
阅读全文 |
作者:faseter |
评论次数(8) |
浏览次数(2667)
[2007-12-10 15:47] BIOS和DOS中断大全
准备个手册...
;-)
中断INT 21H :
1、字符功能调用类(Character-Oriented Function)
01H、07H和08H —从标准输入设备输入字符
02H —字符输出
03H —辅助设备的输入
04H —辅助设备的输出
05H —打印输出
06H —控制台输入/输出
09H —显示字符串
0AH — 键盘缓冲输入
0BH —检测输入状态
0CH —清输入缓冲区的输入功能
(1)、功能01H、07H和08H
功能描述:从标准输入设备(如:键盘)读入一个字符。该中断在处理过程中将一直处于等待状态直到有字符可读为止。该输入还可被重...
;-)
中断INT 21H :
1、字符功能调用类(Character-Oriented Function)
01H、07H和08H —从标准输入设备输入字符
02H —字符输出
03H —辅助设备的输入
04H —辅助设备的输出
05H —打印输出
06H —控制台输入/输出
09H —显示字符串
0AH — 键盘缓冲输入
0BH —检测输入状态
0CH —清输入缓冲区的输入功能
(1)、功能01H、07H和08H
功能描述:从标准输入设备(如:键盘)读入一个字符。该中断在处理过程中将一直处于等待状态直到有字符可读为止。该输入还可被重...
[2007-12-12 08:46] 汇编语言超浓缩教程(转)
也是一个汇编的教程,虽然没有王爽老师写的汇编语言好,但是也算不错了,支持下。
----------------
原文:
“ 哎哟,哥们儿,还捣鼓汇编呢?那东西没用,兄弟用VB"钓"一个API就够你忙活个十天半月的,还不一定搞出来。”此君之言倒也不虚,那吾等还有无必要研他一究呢?(废话,当然有啦!要不然你写这篇文章干嘛。)别急,别急,让我把这个中原委慢慢道来:一、所有电脑语言写出的程序运行时在内存中都以机器码方式存储,机器码可以被比较准确的翻译成汇编语言,这是因为汇编语言兼容性最好,故几乎所有跟踪、调试工具(包括WIN95/98下)都是以汇编示人的,如果阁下对CRACK颇感兴趣……;二...
----------------
原文:
“ 哎哟,哥们儿,还捣鼓汇编呢?那东西没用,兄弟用VB"钓"一个API就够你忙活个十天半月的,还不一定搞出来。”此君之言倒也不虚,那吾等还有无必要研他一究呢?(废话,当然有啦!要不然你写这篇文章干嘛。)别急,别急,让我把这个中原委慢慢道来:一、所有电脑语言写出的程序运行时在内存中都以机器码方式存储,机器码可以被比较准确的翻译成汇编语言,这是因为汇编语言兼容性最好,故几乎所有跟踪、调试工具(包括WIN95/98下)都是以汇编示人的,如果阁下对CRACK颇感兴趣……;二...
阅读全文 |
作者:startasm |
评论次数(3) |
浏览次数(2031)
[2007-10-18 10:19] 初学汇编易犯的N个错误
1.段的定义不完整:
定义一个段空间的格式为:
segName segment
....
segName ends
一般首行很少出错,但是,有时候段体内容多了,忘了段结束的 edns了。^_^
2.代码段的起始指令错误:
code segment
start:
mov ax ,1
s:
mov ax , 2
code ends
end s
在上面这段代码中,程序执行从标号s开始,因为在源代码的最后一行“end s”指明了代码开始的位置是s处,而不是start处。做过检测题的朋友们,应该还有印象吧。start只是个标号,没有之外的任何意思,反倒是“end”定义了...
定义一个段空间的格式为:
segName segment
....
segName ends
一般首行很少出错,但是,有时候段体内容多了,忘了段结束的 edns了。^_^
2.代码段的起始指令错误:
code segment
start:
mov ax ,1
s:
mov ax , 2
code ends
end s
在上面这段代码中,程序执行从标号s开始,因为在源代码的最后一行“end s”指明了代码开始的位置是s处,而不是start处。做过检测题的朋友们,应该还有印象吧。start只是个标号,没有之外的任何意思,反倒是“end”定义了...
阅读全文 |
作者:fishboy |
评论次数(8) |
浏览次数(2822)
[2008-01-09 11:30] 学汇编的一点心得
我觉得,学习汇编有一个比较大的好处,就是可以了解到在电脑中每一个字节数据的来龙去脉。
我们编写程序,首先要知道的是要让CPU处理的数据是哪些,它们都在什么地方,它们之间是什么关系,这就涉及到寻址的问题。正确的寻址可以让我们的程序减少错误。
其次是,要让CPU处理的是什么样的数据,是字节、字,还是双字的等等,这也很重要。对于不一样的数据,我们要给它们分配相应的空间,采取不同的处理运算方式。
再者是,CPU在处理数据的过程中,总会有产生一些中间结果和最终结果,它们又应该存放在什么地方,即涉及到数据的传递问题。这时候,各种寄存器和栈,甚至是一些内存空间就发挥了重要的临时存...
我们编写程序,首先要知道的是要让CPU处理的数据是哪些,它们都在什么地方,它们之间是什么关系,这就涉及到寻址的问题。正确的寻址可以让我们的程序减少错误。
其次是,要让CPU处理的是什么样的数据,是字节、字,还是双字的等等,这也很重要。对于不一样的数据,我们要给它们分配相应的空间,采取不同的处理运算方式。
再者是,CPU在处理数据的过程中,总会有产生一些中间结果和最终结果,它们又应该存放在什么地方,即涉及到数据的传递问题。这时候,各种寄存器和栈,甚至是一些内存空间就发挥了重要的临时存...
阅读全文 |
作者:wuerlang |
评论次数(7) |
浏览次数(2516)
[2009-02-17 12:03] 汇编语言程序格式
学训练营C版块前必看,C版块内容涉及到汇编的知识,其中有一些王爽老师汇编书上没有讲解的伪指令。
===========================================================
转载:汇编语言源程序用语句书写,MASM中可使用的语句分成两类,他们是指令性语句和伪指令语句
1.指令性语句:指令性语句与机器指令相对应,汇编程序将他翻译成目标代码(机器指令代码)。语句格为:
标号: 指令助记符 操作数,操作数;注释
标号表示指令语句的符号地址,标号后面必须紧跟“:”。标号可以省略,他经常作为转移指令或CALL指令的一个操作数,用以表示...
===========================================================
转载:汇编语言源程序用语句书写,MASM中可使用的语句分成两类,他们是指令性语句和伪指令语句
1.指令性语句:指令性语句与机器指令相对应,汇编程序将他翻译成目标代码(机器指令代码)。语句格为:
标号: 指令助记符 操作数,操作数;注释
标号表示指令语句的符号地址,标号后面必须紧跟“:”。标号可以省略,他经常作为转移指令或CALL指令的一个操作数,用以表示...
[2007-11-28 19:48] 很多可写的存储器也叫做ROM
为什么现在很多可写的存储器也叫做ROM?例如FLASH,EEPROM等,它们都是可写的,为什么不叫做RAM,而叫做ROM呢?最初,把只能读的存储器叫做ROM(Read Only Memory),并且掉电后数据不会丢失。由于不能改写,因而使用起来很不方便。随着技术的进步,在ROM中使用一些新技术,就可以使它具有可以编程的功能。比较早的是熔丝型的可编程ROM,由于是通过熔断熔丝来编程的,所以这类ROM编程后,就不能再写了,是一次性的(OTP)。后来又出现了EPROM,是通过紫外线来擦除的,并且通过高压来编程,这类ROM上面一般有一个透明的石英玻璃窗,看上去挺漂亮的,它就是用来给紫外线照射的。后来又...
[2008-01-02 18:26] 【转】不再疑惑,汇编之后
不再疑惑,汇编之后
文章作者:dodo
学习计算机知识的目的是为了使用计算机解决问题。为了更好的使用计算机我们必须要学会能与计算机直接沟通和交流的汇编语言。在我们认真学完《汇编语言》之后,就可以和计算机进行基本的沟通和交流了,也就是有了基础,但只有这些基础还不够,我们还需要更多的计算机方面知识。作为一个渴望知识和并不满足于现状的你,一定会想下一步该学习什么?任何简单的答复都让你质疑。但是你已学完了《汇编语言》,你应该对机器有了了解,也具备了独立判断下一步该学什么的能力了。下面是汇编相关的几个方面的介绍和分析,你看你应该从那方面入手进行下一步的学习。
1、从汇编语言自身的角度...
文章作者:dodo
学习计算机知识的目的是为了使用计算机解决问题。为了更好的使用计算机我们必须要学会能与计算机直接沟通和交流的汇编语言。在我们认真学完《汇编语言》之后,就可以和计算机进行基本的沟通和交流了,也就是有了基础,但只有这些基础还不够,我们还需要更多的计算机方面知识。作为一个渴望知识和并不满足于现状的你,一定会想下一步该学习什么?任何简单的答复都让你质疑。但是你已学完了《汇编语言》,你应该对机器有了了解,也具备了独立判断下一步该学什么的能力了。下面是汇编相关的几个方面的介绍和分析,你看你应该从那方面入手进行下一步的学习。
1、从汇编语言自身的角度...
页码数(1):
1