![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编学习笔记
今天要来电代码吗
What does not kill me, makes me stronger.
展开
-
MOV AX,BX和MOV AX,[BX]的区别
MOV AX,BX是把BX里的内容给AXMOV AX,[BX]是把BX里的内容作为地址,再把这个地址里的内容给AX例如 BX=0x1000,而0x1000处储存的内容是0001H,那么MOV AX,[BX]就是相当于MOV AX,0001H原创 2020-12-29 21:58:49 · 10370 阅读 · 0 评论 -
几个寄存器寻址方式
寻址方式名称:sa:[idata]直接寻址sa:[bx]寄存器间接寻址sa:[bp]寄存器间接寻址sa:[si]寄存器间接寻址sa:[di]寄存器间接寻址sa:[bx+idata]寄存器相对寻址sa:[bp+idata] 寄存器相对寻址sa:[si+idata] 寄存器相对寻址sa:[di+idata] 寄存器相对寻址sa:[bx+si]基址变址寻址sa:[bx+di] 基址变址寻址sa:[bp+si] 基址变址寻址sa:[bp+di] 基址变址寻址sa:[bx+si+idata转载 2020-12-29 21:49:34 · 1112 阅读 · 0 评论 -
汇编两个十进制数相乘,以二进制和十六进制分别输出
实验7:数值运算与数据输出1、实验目的:掌握通过键盘输入接收字符串、乘法运算、2/16进制数与ASCII码之间相互转换以及数据显示输出的程序设计方法。2、实验内容:从键盘输入2个0–99之间的整数,对其做乘法运算,在屏幕上显示出该乘积对应的二进制和十六进制数。3、实验要求:(1)在屏幕提示:“please input the first number(0–99): ”后,输入一个0–99之间的整数。若所输入的数不在此范围内,或输入其它字符,则屏幕提示:“input an invalid nu原创 2020-12-24 21:19:30 · 2109 阅读 · 10 评论 -
循环输出变量中的数
1、实验目的:通过完成将字节内存单元存储的8个数依次显示在屏幕上的程序设计,掌握循环与子程序设计的方法。2、实验内容:将内存单元存储的8个两位16进制数:01H, 25H, 38H, 62H, 8DH, 9AH, BAH, CEH依次显示在屏幕上。3、实验要求:(1)显示内存中存储的8个两位16进制数;(2)在屏幕上显示8个两位16进制数,两个数之间用“,”号分开;这里就直接上代码了直接转换法:DATAS SEGMENT DATE DB 01H,25H,38H,62H,8DH,9A原创 2020-12-23 22:00:23 · 349 阅读 · 0 评论 -
进位标识符
CF(Carry Flag)——进位标识符。当运算结果的最高位有进位(加法)或借位(减法)时,CF=1;否则,CF=0.3AH+7CH=B6H,没有进位:CF=0AAH+7CH=(1)26H,有进位:CF=1ZF(Zero Flag)——零标识符。若运算结果为0,则ZF=1;否则ZF=0。3AH+7CH=B6H,结果不是0:ZF=084H+7CH=(1)00H,结果是0:ZF=1SF(Sign Flag)——符号标识符。运算结果最高位为1,则SF=1;否则SF=0。3AH.原创 2020-12-20 17:12:43 · 3629 阅读 · 3 评论 -
寄存器内容
通用寄存器:8086的16为通用寄存器是:AX BX CX DXSI DI BP SP其中4个数据寄存器还可以分为高8位和低8位两个独立的寄存器8086的8位通用寄存器是:AH BH CH DHAL BL CL DLAX——累加器,用于算术、逻辑运算以及外设传送信息等;BX——基址寄存器,常用做存放储存器的地址;CX——计数器,作为循环和串操作等指令中的隐含计数器原创 2020-12-20 16:01:04 · 839 阅读 · 1 评论