《汇编语言》王爽_第5章笔记
[bx]和内存单元的描述要完整地描述一个内存单元,需要两种信息:
内存单元的地址
内存单元的长度
[bx] 也表示一个内存单元,它的偏移地址在 bx 中。
mov ax,[bx] :将一个内存单元的内容送入ax,这个内存单元的长度为2字节,偏移地址在bx中,段地址在ds中。
mov al,[bx] :将一个内存单元的内容送入al,这个内存单元的长度为1字节,偏移地址在bx中,段地址在ds中。
我们定义的描述性符号:“()”我们用 () 来表示一个寄存器或一个内存单元中的内容。(()中的内存单元的地址为物理地址)
假设 ds 中的内容为 ADR1,bx 中的内容为 ADR2,则 ((ds)*16+(bx)) 表示:内存 ADR1:ADR2 单元的内容。
() 中的元素可以有3中类型:
寄存器名
段寄存器名
内存单元的物理地址(一个20位数据)
(X) 所表示的数据有两种类型:字节、字。
(al)、(bl)、(cl)等得到的数据为字节型;(ax)、(bx)、(cx)等得到的数据为字型。
约定符号idata表示常量以后我们用 idata 表示常量。
比如:mov ax,[ida ...
《汇编语言》王爽_第4章笔记
一个源程序从写出到执行的过程
编写汇编源程序
对源程序进行编译连接
可执行文件包含两部分内容:程序和数据、相关的描述信息
执行可执行文件中的程序
源程序程序4.1
assume cs:codesgcodesg segment mov ax,0123H mov bx,0456H add ax,bx add ax,ax mov ax,4c00H int 21Hcodesg endsend
源程序中包含两种指令:汇编指令、伪指令。
汇编指令:有对应的机器码,最终为CPU所执行。
伪指令:由编译器来执行,编译器根据伪指令来进行相关的编译工作。
伪指令程序4.1中出现了3种伪指令
XXX segment …… XXX ends
segment 和 ends 是一对成对使用的伪指令。segment 和 ends 的功能是定义一个段,segment 代表开始,ends代表结束。
使用格式:
段名 segment ... ...段名 ends
一个汇编程序是由多个段组成的,这 ...
一些突然的想法
刚才心情不是很好,我就在想假如能给我选择的权力,我一定不会选择出生在这个世上了,活着实在太难了。现在冷静下来,觉得这个问题确实值得思考,“如果可以重来,你还会选择出生在这个世界过着如今的生活吗?”,现在的我给出的答案是不知道,真的不知道。回顾我这近二十年的人生,欢声笑语是有的,痛苦折磨也不少,如果没有出生,那就不能和朋友在一起开心地疯玩,也无法体会追剧看番打游戏的快乐,但是没有出生的话也就不会碰上那么多无法解决地事情,背上那么多的负担和痛苦的回忆。可人活着就是这样啊,上天会给你糖吃,也会给你巴掌。
不该再继续想下去了,杨绛先生曾说“你的问题主要在于读书不多而想得太多”。 这句话大概是适合所有人的。
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post$ hexo new "My New Post"
More info: Writing
Run server$ hexo server
More info: Server
Generate static files$ hexo generate
More info: Generating
Deploy to remote sites$ hexo deploy
More info: Deployment