c有关的问题


SSE矩阵-矩阵乘法

我有麻烦用C中的SSE做矩阵-矩阵乘法。
以下是我到目前为止得到的:
# 定义N 1000
Void matmulSSE(int mat1[N],int mat2[N],int result[N]) {
Int i,j,k;


一个C程序使系统崩溃

几天前,我接受了一次面试,我被要求用c语言编写一个程序,使系统崩溃/关闭系统。不用说,我觉得自己很笨,不知道该怎么做.


使用MASM生成对象文件并将其与MSVC对象文件链接

我想用一个生成的对象文件链接一个只包含一个函数的程序集文件。我想知道如何创造。MASM中的obj文件,我还需要知道如何创建这样一个


在C中,对于 32 位机器和 64 位机器,long的大小是多少?

C中的long对于 32 位平台的大小为 4 字节,对于 64 位平台的大小为 8 字节,这是正确的吗?


为什么这个函数序言中没有 “sub rsp” 指令,为什么函数参数存储在负rbp偏移量?

这就是我通过阅读一些内存分割文档所理解的: 当一个函数被调用时,有一些指令 (称为函数序言) 将帧指针保存在堆栈上,.


使用int64x2_t向量将低 64 位复制到高 64 位?

我找不到我需要的霓虹灯仪器。我有一个 128 位值作为int64x2_t,我需要将低 64 位复制到高 64 位。我还需要将高 64 位复制到低.


为什么sum1 = 46 和sum2 = 48

在下面提到的代码中,当运算符从左到右优先时,sum1 变量得到 46 作为答案。但是在sum2 中,答案得到 48,它的优先级是从右到左。为什么那些ans.


增加和增加战俘

想法是这样的 :( 0),它工作完美,除了 5,当我给 5 它计算错误。我不明白为什么?
Int i,a,n;
Int sum = 1;
Scanf ("% d",& a);
Scanf ("% d",& n);
……


书CSAPP中的汇编代码

在书CSAPP,3.7.5 本地存储在寄存器中,有一个调用函数:
长P (长x,长y)
{
长u = Q(y);
长v = Q(x);
返回u v;
}
和生成的程序集.


什么决定整数的大小?

Sizeof (int) 在我的Dev Cpp上显示 4,即使它在 64 位机器上运行。为什么它不考虑底层HW并显示 8 呢?另外,如果我编译环境也变成 64 位.


为什么在此代码中GlutPostRedisplay和sleep函数不起作用?

我已经尝试在这个项目中实现usb和cpu之间的数据传输。数据传输显示为从计算机的一个组件移动到另一个组件的小矩形。
在.


什么是C中的未定义行为?

什么是C中的未定义行为?
我正在使用GCC编译器。在某些情况下,我得到正确的值,虽然程序的输出应该是未定义的。我运行了几次那些程序。但是.


C: 提高使用重sin() 函数的性能

我有一个C函数,根据经过的时间计算 4 个正弦的值。使用gprof,我认为这个函数使用 100% (100.7% 确切地说是lol) 的CPU时间。
虚空
Update_sines (void.


使用GCC的Nasm内联汇编

在我的项目中,我需要使用内联汇编,但它需要是Nasm,因为我对GAS不太熟悉。
我的尝试:
Void DateAndTime()
{
Asm
(.L1: mov al,10 ;Get RTC regist.


Bit twidling: 设置了哪个位?

我有一个 64 位无符号整数,正好 1 位集。我想为每个可能的 64 个值分配一个值 (在这种情况下,奇数质数,所以 0x1 对应于 3,0x2 对应于 5,.


为什么我不能在我的C代码中使用//样式的注释?

我正在使用gcc (Ubuntu 4.4.1-4buntu9) 编译我正在编写的程序,但是每当它在我的代码中看到一个//注释时,它似乎会呕吐,说:
Interface.c :# #: 错误: 预期表达式为.


提高SQLite的每秒插入性能

优化SQLite是棘手的。C应用程序的批量插入性能可以从每秒 85 次插入到每秒超过 96,000 次插入!
背景: 我们使用SQLite作为桌面的一部分


在C程序中计算经过的时间 (以毫秒为单位)

我想计算我的程序的某个部分执行所花费的时间 (以毫秒为单位)。我一直在网上找,但是关于这个话题的信息不多。你们谁知道怎么做?


Sbrk () 如何工作?

我试图理解sbrk是如何工作的。
这里是我的小代码:
Int main()
{
Printf ("break : % p \ n",sbrk(0 ));
Printf ("休息结束: % p \ n",sbrk(10));
Printf ("new e.


在main() 之前,之后或内部声明函数有好处吗?

我正在尝试学习嵌入式系统的c语言。目前,我正在学习基础知识,但找不到一个基本问题的答案。当我写一个简单的C程序时,我声明了一个


又一个快速三角学

Float sinx(float x)
{
静态const float a[] = {-.1666666664,.0083333315,-.0001984090,.0000027526,-.0000000239};
Float xsq = x * x;
Float temp = x *(1 a[0]* xsq a[1]* xsq a[2]* xsq.


Pow () 是否适用于C中的int数据类型?

我只是写一个程序来计算整数的幂。但是产量并不像预期的那样。它适用于所有整数,除了 5 的幂。
我的代码是:
# Include <.


是while(1); C中未定义的行为?

在C 11 中是未定义的行为,但在C中是这样吗,虽然 (1); 是未定义的行为吗?


C中的时间 (毫秒)

使用以下代码:
# Include <stdio.h>
# Include <time.h>
Int main()
{
Clock_t开始,停止;
Int i;
Start = clock();
For (i = 0; i<2000;i + +)
{
Printf ("% d".


ICC是否满足复数乘法的C99 规格?

考虑这个简单的代码:
# Include <complex.h>
复浮子f (复浮子x) {
返回x * x;
}
如果你用-O3 编译它-march = core-avx2 -fp-model严格使用英特尔编译器你.


为什么循环的顺序会影响迭代 2D数组时的性能?

下面是两个几乎相同的程序,除了我切换了I和j变量。它们都在不同的时间内运行。有人能解释为什么会这样吗?
版本 1
#


是否有更有效的方法将char扩展到uint64_t?

我想通过重复每个位 8 次将无符号字符膨胀到uint64_t。E.g.
Char-> uint64_t
0x00 -> 0x00
0x01 -> 0xFF
0x02 -> 0xFF00
0x03 -> 0xFFFF
0xAA ->


C-左移中的位操作,以删除最有效的位

我有二进制数 (32 / 64 位长度),我想向左移动,以便领先的有效位消失。所有二进制数的长度都不同。所以我没有找到eas.


C至装配,每指令翻译

Gcc-S test.c将c代码转换为汇编。我需要的是每个指令的翻译。我的意思是我需要一种方法,通过它我可以知道这组装配指令对应于这个c


这 3 行C代码自己做什么,他们总共做什么?

Int mystery(int x) {
Int mask = x >> 31;
Return (x ^ mask)
~ 面具 1L;
我相信第一行从x创建一个掩码,如果最有效位为 1,那么它就是 1,并且.


Windows 10 命令提示符下的assembly-c

我正在尝试学习汇编语言,我需要知道如何从windows 10 命令提示符读取c程序的汇编变量。
我试过使用C:\ users \ prete \ Desktop \ booksrc $ gcc -g


常数 0.0039215689 代表什么?

我一直看到这个不断弹出在各种图形头文件
0.0039215689
这似乎与颜色有关?
以下是谷歌的第一个热门:
Void RDP_G_SETFOGCOLOR(void).


Rdtsc () 给出奇怪的结果

我写了一个非常简单的C程序,试图理解C (Linux) 中的rdtsc。程序如下。
# Include <stdio.h>
静态内联无符号长时间刻度 ()
{
无符号


上一页