
汇编语言
__N4c1__
rr
展开
-
AT&T 汇编语法与Intel汇编语法 的认识
参考学习:https://blog.youkuaiyun.com/happy987818/article/details/51557502Intel就是平时学的windows上的汇编的语法GCC上采用的是AT&T的汇编格式。因此极其有必要了解两者的不同。寄存器AT&T要加上%---->%eax与Intel上指令数的位置相反mov edi,esi --...原创 2019-11-29 23:59:44 · 301 阅读 · 0 评论 -
汇编复习0x01 常见三十二位指令(一)
昨天肥家,累的半死没写。一个比较常见而且非常有用的:NOPnop是什么呢,就像他的英文意思一样,nonono!啥都没有,啥都不干。nop常见用于修改汇编码的位置,就是各种跳转啊,那些位置,直接把它们那些复杂的步骤nop掉,然后就一顿瞎搞,把程序搞成自己想的样子。这就是传说中的爆破法最睿智易学的方法。注意!00不是nopnop的十六进制数是90Q1:疑问:为什么不把二进...原创 2019-07-12 16:33:37 · 2535 阅读 · 0 评论 -
汇编语言王爽第三版 实验12 0号中断的处理程序
实验 编写0号中断处理程序先来梳理几个书上没仔细讲的指令,后面要用。MOVSB REP CELMOVSB即字符串传送指令,这条指令按字节传送数据。通过SI和DI这两个寄存器控制字符串的源地址和目标地址,比如DS:SI这段地址的N个字节复制到ES:DI指向的地址,复制后DS:SI的内容保持不变。MOVSB 的英文是 move string byte,意思是搬移一个字节,它是把 DS:S...原创 2019-05-29 10:39:22 · 739 阅读 · 0 评论 -
汇编语言王爽第八章实验七:
听说这是一条很难的实验题,我也是这么认为的:但如果能对寻址是什么能了然于心,也不过尔尔。先来再看一下题目:(去看书)分析:这道题的难点在于,寻址和div的运用(div记住了规律就会了)首先拿到了这道题目,就分析一下这两块数据地址的变化规律,毕竟我们的难点在于如何寻址嘛,这些地址的变化规律看一下,可以知道,第一块年数据地址之间相隔4,第二块收入数据地址之间相隔也是4,第三块雇员数据地址之间...原创 2019-05-18 20:37:36 · 601 阅读 · 2 评论 -
迭代法求平方根
踩了个坑,在判断循环成立条件的时候理解错了,一直报错。题目描述用迭代法求 平方根公式:求a的平方根的迭代公式为: X[n+1]=(X[n]+a/X[n])/2 要求前后两次求出的差的绝对值少于0.00001。 输出保留3位小数输入X输出X的平方根样例输入4样例输出2.000解题思路以及注意事项:迭代法迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程。大家要有灵...原创 2019-05-27 21:35:03 · 15676 阅读 · 3 评论 -
王爽汇编语言检测点 11.4
题目:下面的程序执行后,ax的值是多少?assume cs:codesgdatasg segment db 16 dup(0)datasg endscodesg segment start: mov ax,0 push ax popf mov ax,0fff0h add ax,0010h pushf po...原创 2019-05-27 20:49:18 · 1789 阅读 · 2 评论 -
王爽汇编语言实验8:分析一个奇怪的程序
好难的一个题,脑洞很大,同时也是对命令是用位移而不是用地址来定位的这一全新概念做的最好阐释。再来看下题目:先遵循正规的套路,先从start开始:(为了更好理解,先放出反汇编的代码:注意机器码对应的。)由start一直往下:直到:mov di, offset smov si, offset s2mov ax, cs:[si]mov cs:[di], ax这个的意思是将s2处...原创 2019-05-21 00:05:46 · 3437 阅读 · 3 评论 -
汇编语言王爽第三版第五章实验四20190507
1.编程,向内存0:200-0:23F依次传送数据0~63(3FH)assume cs:codecode segmentmov ax,0mov ds,axmov bx,200hmov cx,64mov al,0s:mov [bx],alinc bxinc alloop smov ax,4c00hint 21hcode endsend2....原创 2019-05-07 21:33:18 · 1679 阅读 · 5 评论 -
汇编语言第三版王爽 7.9..问题
将datasg段中每个单词的前四个字母改为大写字母其中datasg中有四个字符串。话不多说,直接放答案。assume cs:codesg,ss:stacksg,ds:datasgstacksg segment dw 0,0,0,0,0,0,0,0 # 8个字单元用作栈空间stacksg endsdatasg segment db '1. display '...原创 2019-05-14 21:16:34 · 1294 阅读 · 0 评论 -
原码,补码和真值之间的区别和联系
讲简单一点,通俗易懂一点,记住就行了,也不用刻意去理解的太深。讲那么多不实际,还不如直接记住几个例子。原码和补码就是计算机在存储带符号的数的时候用来存储的方式,或许有人会问:为啥不直接用正负号啊,搞这么多东西干什么。但这个时候,我们应该理解,计算机储存的过程,是机器语言发挥作用的过程。机器语言是啥? 这是最低级的语言,这么低级的语言是无法理解正负号这种人类能看懂的东西的,机器就是机器。...原创 2019-05-19 22:07:09 · 7272 阅读 · 0 评论 -
汇编语言第三版 3.19实验 为什么2000:0~2000:f中的内容会发生变化
问题代码如下:debug-a0b39:0100 mov ax,20000b39:0103 mov ss,ax0b39:0105 mov sp,100b39:0108 mov ax,31230b39:010b push ax0b39:010c mov ax,33660b39:010f push ax0b39:0110--e 2000:0 0 0 0 0 0 0 0 0 0 0...原创 2019-04-23 20:03:53 · 2824 阅读 · 0 评论