2022年2022年汇编语言 .pdf
《2022年2022年汇编语言 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编语言 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、8086 CPU 中寄存器总共为14 个,且均为16 位 。即 AX,BX,CX ,DX,SP ,BP ,SI,DI,IP,FLAG ,CS ,DS,SS ,ES 共 14 个。而这 14 个寄存器按照一定方式又分为了通用寄存器,控制寄存器和段寄存器。FLAG( PSW ) programstatus word 程序状态字寄存器或称标志寄存器(16bit) 通用寄存器:AX,BX ,CX ,DX 称作为数据寄存器: x 表示的意思是 mix,“混合”的意思 ,因为 AX可以分为两个独立的8 位的 AH 和 AL 寄存器AX (Accumulator) :累加寄存器,也称之为累加器;BX (Ba
2、se) :基地址寄存器;CX (Count) :计数器寄存器;DX (Data) :数据寄存器;SP 和 BP 又称作为指针寄存器:SP (Stack Pointer) :堆栈指针寄存器;BP (Base Pointer) :基指针寄存器;SI 和 DI 又称作为变址寄存器:SI (Source Index) :源变址寄存器;DI (Destination Index):目的变址寄存器;控制寄存器:IP (Instruction Pointer):指令指针寄存器;FLAG :标志寄存器;段寄存器:CS (Code Segment) :代码段寄存器;DS (Data Segment) :数据段寄
3、存器;SS (Stack Segment) :堆栈段寄存器;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - ES (Extra Segment) :附加段寄存器;八 伪指令( segment,ends,end,assume,offset,seg,dup,db,dw,dd, in,out)dw 定义字 (2 字节). proc 定义过程 . endp 过程结束 . segment 定义段 . assume 建立段寄存器寻址 .(
4、假定)ends 段结束 . end 程序结束 . -? 显示Debug 命令列表。-a 汇编8086/8087/8088 记忆码 。-c 比较内存的两个部分。-d 显示部分内存的内容。-e 从指定地址开始,将数据输入到内存。-f 使用指定值填充一段内存。-g 运行在内存中的可执行文件。(Go to 某一条指令)-h 执行十六进制运算。-i 显示来自特定端口的1 字节值。-l 将文件或磁盘扇区内容加载到内存。-m 复制内存块中的内容-/n 为 l 或 w 命令指定文件,或者指定正在测试的文件的参数。-o 向输出端口发送1 个字节的值。-p 执行循环、重复的字符串指令、软件中断或子例程。-q 停止
5、Debug 会话。-r 显示或改变一个或多个寄存器。-s 在部分内存中搜索一个或多个字节值的模式。-t 执行一条指令,然后显示所有寄存器的内容、所有标志的状态和Debug 下一步要执行名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 的指令的解码形式。(单步)-u 反汇编字节并显示相应的原语句。-w 将被测试文件写入磁盘。-xa 分配扩展内存。-xd 释放扩展内存。-xm 映射扩展内存页。-xs 显示扩展内存的状态。/cd mas
6、mmasm ex1.asmlink ex1.objcls debug ex1.exe ex1 安装 DOSBox ,完成后双击打开DOSBox 在输入框状态下z: z:mount c d: 把 D 盘作为模拟的 C 文件夹位置z:c: 进入 c 盘在输入框状态下c: c:cd Project 进入 Project文件夹。在输入框状态下输入debug 进入一、 十进制与二进制之间的转换(1) 十进制转换为二进制,分为整数部分和小数部分 整数部分方法:除 2 取余法 ,即每次将整数部分除以2,余数为该位权上的数,而商继续除以 2, 余数又为上一个位权上的数, 这个步骤一直持续下去, 直到商为 0
7、为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。下面举例:例:将十进制的168 转换为二进制得出结果将十进制的 168 转换为二进制,( 10101000 )2 分析:第一步,将 168 除以 2,商 84,余数为 0。第二步,将商 84 除以 2,商 42 余数为 0。第三步,将商 42 除以 2,商 21 余数为 0。第四步,将商 21 除以 2,商 10 余数为 1。第五步,将商 10 除以 2,商 5 余数为 0。第六步,将商 5 除以 2,商 2 余数为 1。第七步,将商 2 除以 2,商 1 余数为 0。第八步,将商 1 除以 2,商 0 余数为 1。第九步,读数,
8、因为最后一位是经过多次除以2 才得到的,因此它是最高位,读数字从最后的余数向前读,即10101000 (2) 小数部分方法:乘 2 取整法 ,即将小数部分乘以2,然后取整数部分,剩下的小数部分继名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 续乘以 2,然后取整数部分,剩下的小数部分又乘以2,一直取到小数部分为零为止。如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时, 就根据后面一位是0 还是 1,取舍,如
9、果是零, 舍掉,如果是 1,向入一位。换句话说就是0 舍 1 入。读数要从前面的整数读到后面的整数,下面举例:例 1:将 0.125 换算为二进制得出结果:将 0.125 换算为二进制( 0.001 )2 分析:第一步,将0.125 乘以 2,得 0.25,则整数部分为 0,小数部分为 0.25; 第二步 , 将小数部分 0.25 乘以 2,得 0.5,则整数部分为 0,小数部分为 0.5; 第三步 , 将小数部分 0.5 乘以 2,得 1.0,则整数部分为 1,小数部分为 0.0; 第四步 ,读数,从第一位读起 ,读到最后一位 ,即为 0.001。例 2,将 0.45 转换为二进制(保留到小
10、数点第四位)大家从上面步骤可以看出,当第五次做乘法时候,得到的结果是0.4,那么小数部分继续乘以2,得 0.8,0.8 又乘以 2 的,到 1.6 这样一直乘下去,最后不可能得到小数部分为零,因此,这个时候只好学习十进制的方法进行四舍五入了,但是二进制只有0 和 1 两个,于是就出现0 舍 1 入。这个也是计算机在转换中会产生误差,但是由于保留位数很多,精度很高,所以可以忽略不计。那么,我们可以得出结果将0.45 转换为二进制约等于0.0111 上面介绍的方法是十进制转换为为二进制的方法,需要大家注意的是:1) 十进制转换为二进制,需要分成整数和小数两个部分分别转换2) 当转换整数时,用的除2
11、 取余法,而转换小数时候,用的是乘2 取整法3) 注意他们的读数方向因此,我们从上面的方法,我们可以得出十进制数168.125转换为二进制为10101000.001, 或者十进制数转换为二进制数约等于10101000.0111 。(3) 二进制转换为十进制不分整数和小数部分方法: 按权相加法 ,即将二进制每位上的数乘以权,然后相加之和即是十进制数。例将二进制数 101.101 转换为十进制数。得出结果:( 101.101 )2=(5.625)10 大家在做二进制转换成十进制需要注意的是1) 要知道二进制每位的权值2) 要能求出每位的值二、 二进制与八进制之间的转换首先,我们需要了解一个数学关系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年汇编语言 2022 汇编语言
限制150内