汇编语言
qqjlove
喜欢编程的我,希望在csdn这个大平台上展现不一样的我!
展开
-
汇编语言中的各种功能调用
原来汇编中的功能调用就是这么回事,我的理解就是,用汇编来实现键盘上的一些特殊功能1.键盘输入并显示(1号功能调用)格式: MOV AH, 01H INT 21H功能:按下任何键,将其对应字符的ASCII码送入AL中,并在屏幕上显示该字符。如果按下的是Ctrl+Break组合键,则终止程序执行。1号功能调用无须入口参数,出口参数在AL中2.键盘输入但不原创 2012-12-05 20:34:38 · 17071 阅读 · 6 评论 -
那些年我们一起学的汇编----之寻址方式
转载自http://yiluohuanghun.blog.51cto.com/3407300/938282首先还是说下指令操作数,Intel 8086/8088CPU的指令系统中锁需操作数有以下4种:(1)寄存器操作数:操作数在CPU的通用寄存器或段寄存器中(2)立即数操作数:操作数在指令中直接给出(3)存储器操作数:操作数在存储器的存储单元中(4)I/O操作数:转载 2012-12-30 09:55:22 · 1078 阅读 · 0 评论 -
那些年,我们一起学过的汇编----之程序返回操作系统
转载自http://yiluohuanghun.blog.51cto.com/3407300/939717我们都知道,汇编语言源程序要进过汇编和连接两个步骤才能生成一个可以在DOS下直接执行的.exe文件,在DOS下执行这个文件时,DOS像调用子程序一样,把控制权交给它,而这个exe文件执行完成后也要像子程序返回调用程序一样返回DOS,一、用4CH系统功能调用实现返回4转载 2012-12-30 10:11:28 · 1897 阅读 · 0 评论 -
那些年,我们一起学过的汇编----之伪指令
转载自http://yiluohuanghun.blog.51cto.com/3407300/939403首先,我想很多人对伪指令语句与指令语句的区别不是太清楚吧,两者的区别在于:伪指令由汇编程序解释后完成相应的操作,会变厚不产生目标机器代码,进过汇编后的目标程序中,伪指令码已经不复存在。指令语句由汇编程序翻译成机器目标代码,一定有对应的目标代码,并且只能在程序运行时才能由CPU完成其操作转载 2012-12-30 10:08:47 · 1590 阅读 · 0 评论 -
点滴微机原理
<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->基本的程序执行寄存器通用寄存器: 这八个寄存器能用于存放操作数和指针段寄存器:这些段寄存器最多能保持4个段选择子FLAGS寄存器:FLAGS寄存器报告正在执行的程序的状态,并允许有限的控制处理器IP(指令指针)寄存器:原创 2012-12-31 11:43:08 · 1003 阅读 · 0 评论 -
那些年,我们一起学过的汇编----之子程序设计
在我的上一篇博文中,我简单的向大家介绍了汇编语言程序设计的三种基本方式。在一个程序中的不同地方,常常需要多次非循环的使用完成特定功能的程序段,这些程序段除了某些变量的赋值不同外,具有相同的指令序列,这时,我们为了减少重复编写程序,缩短目标代码,节省内存空间,把视线这一功能的指令序列组成一个相对独立的程序段。这也就是我们这片文章中所要讨论的子程序。子程序相当于高级语言(比如C语言)中的过程和函数转载 2012-12-31 08:25:01 · 914 阅读 · 0 评论 -
那些年,我们一起学过的汇编----之顺序、分支与循环程序设计
出自于:http://yiluohuanghun.blog.51cto.com/3407300/940198一个算法用程序设计语言的语句有序的组合在一起加以描述,其组合方式称为程序的控制结构或简称为程序结构。程序的基本结构有顺序结构,分支结构和循环结构。一:顺序结构顺序结构是最简单的,也是最基本的程序结构形式,这种结构形式的程序的最大特点点就是程序运行时从开始到结尾转载 2012-12-30 11:22:28 · 1558 阅读 · 0 评论 -
那些年,我们一起学过的汇编----之跳转指令
转载自http://yiluohuanghun.blog.51cto.com/3407300/940123汇编中的跳转指令从大体上分为无条件转移指令和条件转移指令。下面就围绕着这两个大的方面来探究下汇编语言的跳转指令。 一、无条件转移指令无条件转移指令JMP将无条件地转移到指令的目的地址去执行指令,因此JMP指令必须指定转移的目标地址无条件转移指令可以分为两类:段内跳转转载 2012-12-30 10:16:46 · 873 阅读 · 0 评论 -
汇编程序输出“Hello world”
学了一个学期的汇编了,该复习复习了。大后天就要开始开微机原理了。先那把些上机做过的题再拿出来写写~在DOS窗口上面输出“Hello world”程序如下: DATA SEGMENT ;定义数据段 STRING DB ‘Hello World’, $; 定义一个字符串,记得要以$为结束标志DATA ENDS ;数据段结束STACK原创 2012-12-30 09:31:54 · 21867 阅读 · 1 评论 -
汇编中求给定数中的最大值(或最小值)
汇编中求给定数中的最大值(或最小值),放至指定的存储单元中。每个数用16位表示NAME SEARCH_MAXDATA SEGMENTBUFFER DW X1,X2,...Xn ;定义一个一组数为字型数16位COUNT EQU $-BUFFERMAX DW ? ;为那个最大数预留空间DATA原创 2012-12-28 20:43:41 · 9703 阅读 · 1 评论 -
汇编中的CS和IP
CS和IP 是8086中两个最关键的寄存器,他们指示了cpu当前要读取指令的地方。CS为代码段寄存器,IP为指令指针寄存器在8086pc机中,任意时刻,设CS中的内容为M,IP中的内容为N,8086CPU将从内存M*16+N单元开始,读取下一条指令8086cpu工作的过程可以描述如下:1:从CS:IP指向的内存单元读取指令,读取的指令进入指令缓冲器2:IP=IP原创 2012-12-12 14:47:35 · 8525 阅读 · 0 评论 -
汇编语言常用语句
一、数据传输指令─────────────────────────────────────── 它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据. 1. 通用数据传送指令. MOV 传送字或字节. MOVSX 先符号扩展,再传送. MOVZX 先零扩展,再传送. PUSH 把原创 2012-12-05 20:51:12 · 1904 阅读 · 0 评论 -
用汇编语言求一组数的最大值和最小值
首先对10个数按从小到大排序,然后第一个元素就是最小的,最后一个元素就是最大的 data segment mes1 db 'the max:$' mes2 db 'the min:$' a dw 42,20,100,456,99,120,89,12334,90,1239 data ends code segment main proc far assume cs:code,ds:原创 2012-12-05 20:57:39 · 16125 阅读 · 0 评论 -
汇编中的条件转移指令
1. 无条件转移指令(1)无条件段内直接转移指令JMP 标号JMP IP+地址差使控制无条件地转移到标号地址处段内无条件直接转移指令中的地址差可用一个字节表示,也可以用一个字表示如果用字节表示就称短转移如果用字表示就称近转移段内近跳:JMP NEAR PTR PROG段内短跳:JMP SHORT QUEST(2)无条件段内间接转移指令JMP OPRD原创 2012-12-05 20:44:44 · 3922 阅读 · 0 评论 -
汇编语言中loop指令的使用
现在在学习汇编,感觉挺有意思的!,我就把学习的东西写下来吧,当作以后可以学习的笔记~ loop指令的格式是:loop标号,cpu执行loop指令的时候,要进行两步操作1:(cx)=(cx)-1 2:判断cx中的值,不为零则转至标号处执行,如果为零,则向下执行从上面的描述中,可以看到,cx中影响者loop指令的执行结果,通常,我们用loop指令来实现循环功原创 2012-12-05 20:03:42 · 76886 阅读 · 5 评论 -
中断的概念和中断处理过程
中断的概念和中断处理过程(1)中断:在运行一个程序的过程中,断续地以“插入”方式执行一些完成特定处理功能的程序段,这种处理方式称为中断。(2):中断的作用:1:并行操作2:硬件故障报警与处理3:支持多道程序并发运行,提高计算机的运行的效率4:支持实时处理功能(3)中断的概念与术语◎按中断源进行分类:发出中断请求的设备称为中断源。按中断源的不同,中断可分为转载 2012-12-19 17:55:07 · 1210 阅读 · 0 评论