摘要:
《汇编语言程序设计》Richard Blum著:5.2.4 在内存和寄存器之间传送数据 使用变址的内存位置: 可以在一个命令中指定把多个值存放到内存中: values: .int 10,15,20,25,30,35,40,45,50,55,60 这创建存放在内存中的连续的一系列数据值。每个数据值都占用内存的一个单元(在上面的例子中是长整型,即4个字节)。引用数组... 阅读全文
摘要:
AT&T使用$表示立即操作数,而Intel的立即操作数是不需要界定的。因此,使用AT&T语法引用十进制值4时,使用$4,使用Intel语法时只需使用4。 AT&T在寄存器名称前加上前缀%,而Intel不这样做。因此,使用AT&T语法引用EAX寄存器写为%eax。 AT&T语法处理源和目标操作数时使用相反的顺序。把十进制值4传送给EAX寄存器,AT&T的语法是movl $4, %ea... 阅读全文
摘要:
IA-32处理器平台允许3种不同的访问系统内存的方法: (1)平坦内存模式 (2)分段内存模式 (3)实地址模式 平坦内存模式把全部系统内存表示为连续的地址空间。所有指令、数据和堆栈都包含在相同的地址空间中。通过称为线性地址(linear address)的特定地址访问每个内存位置。 分段内存模式把系统内存划分为独立段的组,通过位于段寄存器中的指针进行引用。每个段用于包含特定类型... 阅读全文
摘要:
int __builtin_constant_p (exp); You can use the built-in function __builtin_constant_p to determine if a value is known to be constant at compile-time and hence that GCC can perform constant-folding ... 阅读全文
摘要:
gcc内嵌汇编简介 在内嵌汇编中,可以将C语言表达式指定为汇编指令的操作数,而且不用去管如何将C语言表达式的值读入哪个寄存器,以及如何将计算结果写回C 变量,你只要告诉程序中C语言表达式与汇编指令操作数之间的对应关系即可, GCC会自动插入代码完成必要的操作。 1、简单的内嵌汇编 例: __asm__ __volatile__("hlt"); "__asm__"表... 阅读全文
摘要:
pfdFactory Pro把word转为pdf的操作步骤: 1、打开将要转换的word的文档; 2、文件--->打印; 弹出如下对话框: 单击确定后弹出: 阅读全文
摘要:
例如,设置SQL Server函数GETDATE()作为默认值: 阅读全文
摘要:
QT通过ODBC连接数据库SQL Server 2008,进行数据插入时遇到的问题: 先把数据存入变量中,如何使用变量进行插入?插入语句该怎么写? QSqlQuery query(db); query.exec("insert into device values('"+datetime+"','"+splantNum+"','"+sdeviceNum+"','"+stemper+"','"... 阅读全文
摘要:
T-SQL的INSERT命令的语法: INSERT [INTO] {table_name|view_name} [{(column_name,column_name,…)}] {VALUES (expression,expression,…)} 方括号内是可选的。 列名的列表必须用圆括号包围住,逗号分隔。 关键字VALUES是必须的,... 阅读全文
摘要:
最近自己编写了一个求n阶行列式的值的C程序,编译成功,并且使用了一个3阶行列式进行了测试,测试也成功了。以为这样就万事大吉了,可是后来在实际应用中调用该函数时却导致程序无法运行。注意到,实际应用中要求的行列式是24阶的,也就是说当阶数超过一定范围时程序就不能正确运行了。苦苦思索之后,反复验证之后,问题根源确定在了“递归”上。虽然C语言本身对于递归的次数是没有限制的,但是,函数递归是依赖于栈实现的,... 阅读全文