[置顶] [汇编语言学习笔记][第七章更灵活的定位内存的方法]
2016-04-20 18:06
766 查看
打破了我对bx的幻想
or
db ‘unIX’ 相当于 “db 75H,6EH,49H,58H.”
mov al,’a’ 相当于 “mov al,61H”
重点!!纯位运算方法!!
只需将第6位改成1,就变小写,无需判断,你值得拥有。
只需将第6位改成0,就变大写,无需判断,你值得拥有。
特么后面告诉我其实idata才等价于A, A[i]=idata[i],难怪后面有这么奇葩的格式,不是我所想的ds等价A
其实第八章才揭晓了真实,idata也能看作结构体..
该指令也可以写成以下格式
注意mov 16位数的时候,移进去两个字节,切记切记
相当于对5[]这个数组进行遍历
有以下命名法
第七章 更灵活的定位内存的方法
7.1 and和or指令
andmov al,01100011B and al,00111011B
or
mov al,01100011B or al,00111011B
7.2 关于ASCII
7.3 以字符形式给出数据
在汇编中 用’…’的方式致命数据是以字符形式给出的。data segment db 'unIX' db 'foRK' data ends
db的意思是define bit 定义字节
db ‘unIX’ 相当于 “db 75H,6EH,49H,58H.”
mov al,’a’ 相当于 “mov al,61H”
7.4 大小写转换
在16进制中,大写小写相差20H=
100000B
重点!!纯位运算方法!!
只需将第6位改成1,就变小写,无需判断,你值得拥有。
只需将第6位改成0,就变大写,无需判断,你值得拥有。
以下高能重点:打破了我对bx的幻想
7.5 [bx+idata]
C语言类似含义 :A[i+1]
特么后面告诉我其实idata才等价于A, A[i]=idata[i],难怪后面有这么奇葩的格式,不是我所想的ds等价A
其实第八章才揭晓了真实,idata也能看作结构体..
该指令也可以写成以下格式
- mov ax,[200+bx](普通) - mov ax,200[bx] (数组名) - mov ax,[bx].200 (结构体名)
注意mov 16位数的时候,移进去两个字节,切记切记
7.6 用[bx+idata]的方式进行数组的处理
遍历s:mov al,[5+bx] inc bx loop s
相当于对5[]这个数组进行遍历
7.7 SI和DI
si和
di是8086CPU中和
bx功能相近的寄存器,
si和
di不能够分成两个8位寄存器。
7.8 [bx+si]和[bx+di]
C语言类似含义 :[bx][si]
7.9 [bx+si+idata]和[bx+di+idata]
C语言类似含义idata[bx][si]就是名字叫idata的二维数组
有以下命名法
mov ax,[bx+200+si](普通) mov ax,[200+bx+si](普通) mov ax,200[bx][si] (二维) mov ax,[bx].200[si] (一维结构体数组) mov ax,[bx][si].200 (二维结构体)
7.10 利用栈解决多重循环
相关文章推荐
- Leetcode_338_Counting Bits
- [汇编语言学习笔记][第七章更灵活的定位内存的方法]
- urllib2模块 异常处理
- LeetCode 313 Super Ugly Number
- Android Selector 与 Shape 基本用法
- HCatalog
- iOS-金额小写转大写
- Eclipse开发web项目中关于HttpServletRequest包的问题
- 害人的VS2008,manifest导致“应用程序配置不正确,应用程序未能启动” [转载]
- asp SqlDataSource模糊查询的问题
- CentOS6.5 64位环境下安装Mysql
- 离散小波变换(DWT)整理
- 如何利用Node.js 构建分布式集群
- 国内有哪些好的刷题网站?
- 自定义Hive文件和记录格式
- Hive函数
- vijos P1352 最大获利(最小割)
- iOS Xcode6添加pch文件
- 在ECshop首页模板修改增加收藏本站js代码的方法
- java7中G1垃圾收集器使用和流程总结