5

开机cs0xFFFF,ip0x0000直接进BIOS,BIOS读0,0,1扇区,也就是MBR主引导扇区,这个扇区512字节大,这段平时是操作系统负责写的。BIOS在1M内存的最高端


BIOS把这个扇区扔到内存的0x7c00,然后判断它最后面两字节是不是55和AA,是就是有效,回到0x7c00运行去。

VRAM(video RAM)显存。加电自检后显卡自动进入80x25的文本模式。

不允许直接将立即数传进段寄存器。

文本模式下两个字节控制一个字的样子,第一个字节决定字符,第二个字节决定颜色、闪不闪。


在16位的处理器上(8086),默认是2字节,所以有时需要byte来说明移动的是byte而不是word。两个操作数里有一个是寄存器就不用了。也不能在两个内存之间直接mov。

标号代表汇编地址,也就是在这汇编程序段内的偏移地址。

DB,DW,DD,DQ(byte,word,double word,Quad word)

第一种除法

在任何时候只要在指令中涉及内存地址的,都可以使用段超越前缀,也可以使用标号。


xor,add都不允许两个操作数都是内存单元

相对近转移 jmp near 标号,操作数是标号地址减去当前地址再减3(当前指令byte数),执行的时候IP会加上操作数然后再+3,就得到了应该去的地址。

伪指令times 次数 指令   -------------把后面的指令执行那么多次数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容