随笔分类 -  assembly language 汇编

摘要:1 -- 关于中断向量的几点注释1. 系统引导时,中断向量表放在内存何处? 系统刚引导时,内存0x00000到0x0003FF共1KB的空间用于存放中断向量表。每个中断向量占用4个字节,共可存储256个中断向量。2. 系统引导时,处在实模式下,只可寻址1MB,为什么要用4个字节来寻址中断呢处理程序? 刚看到的时候,我也很纳闷。我们都知道编程的时候指针都是4个字节的,可以寻址4GB,在实模式下完全可以少用字节啊?其实实模式的内存选址方式是:段值 * 16 + 偏移值,就是内存地址。而这4个字节中,2个字节存储段值,两外两个存储偏移值。所以共有4个字节。3. 这篇资料是看书和从网上整理而来的,不同 阅读全文
posted @ 2013-02-02 20:22 Mr.Shadow 阅读(1073) 评论(0) 推荐(0)
摘要:10进制转2进制: $ echo "obase=2;ibase=10;100" | bc 1100100 10进制转16进制: $ echo "obase=16;ibase=10;100" | bc 64 16进制转10进制: $ echo "ibase=16;obase=2;F1" | bc 11110001 注意,16进制数字的F要大写 $ echo "ibase=16;obase=2;f1" | bc0 还可以用bc的交互模式来转换,最后Ctrl-D,或者输入quit退出。 ~$ bcbc 1.06.94Co 阅读全文
posted @ 2012-11-28 21:42 Mr.Shadow 阅读(372) 评论(0) 推荐(0)
摘要:操作数0——为一字符串,称为指令名。该字符串可以为空,当非空时,它要么为gcc 规定的标准指令名,要么为开发者任意给定的名字。非标准名和空名的指令样板只在gcc 编译的汇编代码生成过程中起作用。标准指令名的样板还在RTL 生成中起作用。操作数1——为一不完全的rtx 表达式或向量,称为RTL 模板。它表示该指令样板的RTL 指令体。RTL 模板只规定了RTL 指令体中的各种操作以及操作数的位置和操作数必须满足的条件和限制,并未指明具体的操作数。操作数2——为一字符串,称为条件。这个字符串或者为空,或者为一C 条件表达式。当非空时,它指出此样板有效的条件。操作数3——为一字符串,称为输出模板。输 阅读全文
posted @ 2012-11-23 21:44 Mr.Shadow 阅读(469) 评论(0) 推荐(0)