{全网最详细汇编指令} |
您所在的位置:网站首页 › 汇编语言指令总结 › {全网最详细汇编指令} |
汇编工具包提取:链接:https://pan.baidu.com/s/1gzzW96a1l4vjxY1H03X_Bw?pwd=8888 提取码:8888 --来自百度网盘超级会员V5的分享 数据传输指令 MOV(指令)XCHG(指令)XLAT(换码指令)PUSH、POP(堆栈指令)LEA(地址传送指令)LDS(地址传送指令)LES(地址传送指令)标志寄存器(SF,ZF,PF,CF,OF,AF,TF,IF,DF)标志寄存器传送指令(LAHF、SAHF、PUSHF、POPF)输入输出指令 (IN、OUT) MOV指令 作用:把一个字或者直接的操作数从源地址传送到目的地址(简单理解为赋值) -------------------------------------------------------------------------------------------------------------------------------- XLAT换码指令作用:将bx指定的缓冲区、AL指定的位移处的一个字节数据取出赋值给AL
-------------------------------------------------------------------------------------------------------------------------------- PUSH、POP堆栈指令 作用:将寄存器或者储存器中的数据按照堆栈操作的规则进行出入栈(将操作数压入压入栈和出栈) -------------------------------------------------------------------------------------------------------------------------------- LEA地址传送指令 作用:将对应的地址表示送入对应的寄存器中
内存的值已经送到了DX那里,但是不太清楚DS的值为何从073F变到A73E的具体操作? 有意向的大佬,可以在评论区或者私信里讨论一下!
内存的值已经送到了DX那里,但是不太清楚ES的值为何从073F变到A73E的具体操作? 有意向的大佬,可以在评论区或者私信里讨论一下
![]() ------------------------------------------------------------------------------------------------------------------------------- 1、SF:符号标志位,如果执行结果为负数,则SF=1,非负则SF=0提示:ax:00100010 bx:00000000 -> ax+bx=00100010 这里1的个数是2(偶数) 提示:ffff由于最高位都是1,相加时会进位(这里的进位具体指的就是1+1) 提示:借位的话,一般都是小数减大数的时候会发生。低位减的时候不够了,向高位去借位的情 5、OF:溢出标志位,运算结果超出了机器所能表示的范围称为溢出 无符号数的运算忽略了符号的处理,仅关注数值的大小8位有符号数,机器所能表示的范围是-128 - 127;16位有符号数,机器所能表示的范围是-32768-32767;(比较计算后的十进制数,即可) 大于时溢出 小于时不溢出 ![]() ![]() 11111111 这里是第三位有进位(进位就是1+1) 00001000 11111111 这里是:如果最后四位向前有进位/借位AF=1,否则AF=0; 10000001
通过上述图片,记住-标志寄存器的低八位-和AX高8位(AH) 1、LAHF标志寄存器传送指令该复制的标志位复制上去,其余的不用动(按照这里,简单来说就是就是把3,5位置上的0照搬下来) 0000 0000 1101 0111 D7:1101 0111 99H:1001 1001 并给到标志寄存器所对应位置上面 先把标志寄存器设置好。 2D7的二进制数 0010 1101 0111 后面低8位原理向上面一样。第九位其实就是IF。最后,进栈再出栈
这个其实就是根据外设的端口去获取一些外设的信息。我用DOSBOX可以成功。emu8086好像还要转ascill码,这个大家后续可以去研究一下。(端口很多,大家都可以去了解一下!) BCD码 BCD码:主要是用一些二进制数进行拼接 70H和71H解释 获取当前日期的指令操做 原理:给al一个可以拿到外设日期的端口。然后放到70H中去访问。最后通过71H拿到数据 这就是通过地址总线寻址,然后通过数据总线传输,最后通过控制总写读取和写入 ------------------------------------------------------------------------------------------------------------------------------- 补充 这里是拿2B(2字节数)举的例子 有符号数空间范围:-2^15到2^15 -1 (原因:正负各一半) 无符号数空间范围:0到2^16 -1 (原因:由于没有负数,所以不用分一半)------------------------------------------------------------------------------------------------------------------------------- 总结:在这篇章节里,我自己也有一些不懂问题。大家看完之后,也可以在评论区或者私信我提出自己的问题或和思考。可以一起交流讨论一下!!! |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |