关于系统位数和地址总线位数以及int和指针大小的疑问 2C

问题1:32位,64位系统。地址总线各为多少?
问题2:指针的大小是等于机器字长还是等于地址总线的位数?
问题3:为什么linux上64位系统的getconf WORD_BIT值为32位?是表示机器字长是32位吗?还是说他的值就是int值的大小而不具有别的意义?如果是表示机器字长是32位的话,那么为什么指针的大小是8字节?

2个回答

问题1:32位,64位系统。地址总线各为多少?
地址总线属于硬件,具体来说和CPU有关,和操作系统无关。x64 CPU的地址总线理论上是64位的,但是因为实际上现在的计算机还用不到那么多的内存,为了硬件设计的方便,实际上是54位或者56位的(Intel AMD略有不同)。x64处理器运行32bit操作系统或者在64bit系统上运行32bit程序,使用32bit寻址。
问题2:指针的大小是等于机器字长还是等于地址总线的位数?
指针的大小是编译器决定的,如果你在windows xp下用turbo c写程序,指针还是16bit的。
问题3:为什么linux上64位系统的getconf WORD_BIT值为32位?是表示机器字长是32位吗?还是说他的值就是int值的大小而不具有别的意义?如果是表示机器字长是32位的话,那么为什么指针的大小是8字节?
和操作系统相关。

woshicheng1990
小菜寻路 WORD_BIT是表示机器字长吗??
大约 5 年之前 回复

32位和64位从软件到硬件全部都有涉及,并且衡量的标准也比较模糊,在这里从软件到硬件归纳分析一下
一:32位和64位的区别:
1、32位和64位一般是指CPU的通用寄存器位宽,所以64位的CPU位宽增加一倍
2、可寻址范围大大扩展,32位系统支持最大内存位4G,64位系统理论支持最大内存2^64=18446,744,073,709,551,616,约1600万TB,相当于16EB。(实际还受制于操作系统和主板约束),实际的CPU尤其是这两年的CPU都是采取兼容设计的,内部总线不到64位,后期的CPU逐渐都会采用标准的64位。
3、32位系统和64位系统需要安装支持相应系统模式下的操作系统和驱动软件,也就是32位只能安装32位,64位安装64位的但可兼容32位运算。
4、目前约定俗成的x86就是代表32位操作系统,x64代表64位操作系统。

64位系统的理论优点:
1、64位系统理论支持安装最大16EB的内存,具体跟CPU的地址总线宽度有关,地址总线宽度及支持内存大小见下面的表格
2、所有64位寄存器仍然使用相同的划分方案,仍支持执行8位运算
3、RIP(新的64位指令指针)替代32位的EIP指针(再早期的IP指针为16位),并向下兼容。
4、SIMD指令使用新的寄存器,CPU在64位模式下有16、64位MMX寄存器
5、XMM寄存器为16位,用来做SSE浮点运算指针
6、只有FPU寄存器是80位宽度,其它剩余的寄存器和指令都是64位宽度

64位CPU的实用优点:
64位的系统在视频编辑、文件搜索、科学计算、人工智能、平面设计、视频处理、3D动画和游戏、数据库以及各种网络服务器等方面具备更强大的优势,尤其是在工程制图、3D、音视频制作等领域的具有极佳的应用效果。64位系统效能发挥需要三大模块支撑:硬件、操作系统、上层软件。普通的32位软件是无法在64位操作系统上体现出性能差别的。

二、如何判断您的计算机是否支持64位操作系统
硬件上的区分:
1、CPU: AMD在2003年春季发布第一款针对服务器的x86架构64位服务器处理器皓龙,秋天发布了同样架构的速龙64系列处理器,揭开了64位运算新篇章(当然这是指桌面处理器,专业的64位甚至更高位的处理器早就有了,比如SUN公司的UltraSparc Ⅲ、IBM公司的POWER5、HP公司的Alpha等)。2005年4月26日,微软正式发布了64位操作系统Windows Server 2003 x64 Edition和Windows XP Professional x64 Edition,距离第一片64位x86处理器上市有两年多时间。
也就是说目前发布的通用处理器,包括INTEL、AMD几乎都是64位的,天缘认为只要主板不是“偷工减料”的采用兼容性设计,都是可以支持64位操作系统安装,当然实际支持内存的大小还决定CPU的地址总线宽度和您的主板情况。实际运行还跟前端总线有关,比如早期的FSB和Core i5、Core i7使用的QPI(对抗AMD的HT总线)。
2、主板:目前市面的主流主板都是支持64位CPU的。
3、内存:基本无限制,当然为了搭配新最新的CPU和主板,速度上最好不要拖后腿就可以了。

软件上区分:
1、操作系统:目前Windows的大部分系列都有对应的64位版本发布。比如Windows 7除了家庭版初级班没有64位,其它都有,windows Server 2008R2只发布64位版本。
2、驱动程序和软件:这一点最为头疼,从目前来看,驱动程序除了部分老设备(比如打印机、扫描仪较老可能会没有64位驱动),新的设备都会发布64位驱动程序,但是64位的软件就非常缺乏,而且很多企业由于应用市场关系,目前64位应用还没到非用不可的地步,所以很多企业都还未开发64位版本软件,即使开发出来,售价也相当高。这种现状可能会持续稍后的3-5年不会一下改观。

三:在硬件相同的情况下(且硬件支持64位、内存2GB),32bit的OS用32bit的3DSMAX渲染速度 和 64bit的OS用64bit的3DSMAX渲染速度,哪个快?”及“游戏的载入速度呢?例如《鬼泣4》,例如《金刚狼》,例如《巫师》...”,这个问题 应该是很多网友都会遇到的。

测试条件就是硬件条件相同且都支持64位和内存足够,这是目前主流硬件的基本配置了。问题中的渲染一词在同等条件下仍然是程序运行速度的问题(需要排除依赖显卡的独立部分,因为在Windows 7上很多渲染工作已转交给GPU来完成),下面的回答也必须要以这个为节点或条件。问题2的游戏载入速度同问题1中的渲染,还有个比较特殊的地方,就是还跟DIRECTX版本和驱动等相关,所以也必须规定软件条件必须相同,只有位上差异,故仍是哪个更快的问题。

1、计算机操作系统和软件角度
首先看操作系统和上层软件,无论64位系统还是64位软件都是必须按照64位格式进行编译,也就是默认的字长64位,运行 时,除了一些特殊的独立计算,比如位运算,其它非标准字长变量运行时都是需要进行转换的。32位也是一样,这一点还看不出来哪个优劣(只指速度),即使硬件条件相同,实际上还是有速度上的差异,那就看谁的格式转换最少,这就决定于应用程序的类型和设计方法了。
操作系统也是软件,可以看一下 Windows 7 64位版安装文件大小就知道了,肯定要比32位要大,这里问题就来了,同样一个文件(打个比方),32位可能是1M,而64位的可能就是2M,那么从硬盘上读取就存在时间差异。所以文件大是个劣势。
这里就可以看出不同版本系统或软件实际运行效率几乎相当

2、计算机硬件角度
1、物理硬盘的运行时间,64位系统肯定会让物理硬盘花费更多的时间,如果是固态硬盘则可以解决这个问题,物理硬盘的设计理念决定谁也改变不了这个结果,多读数据就是要花费更多时间,而固态硬盘可以完全按照64位来设计存储位宽,寻址时间几乎不受影响。
2、 再看CPU,现在的CPU都是按照标准64位总线宽度设计的。内 部各种运算机制都是对64位有利的,也就是说单从CPU角度考虑(不计可能集成的前 端总线影响),64位速度会略胜32位。
3、内存方面,内存颗粒芯片大都是按照8位设计BANK重组,当然现在也有16、32位宽,今后肯定也会出现64位宽内存芯片。目前来讲对32位、64位影响都很小。
4、 再来看看CPU的前端总线,早期的并行总线无论对32位和64位影响都很小,因为是信号都是大家一起走(手拉手一起过桥),今后的CPU到北桥之间(注: 现在有INTEL CPU集成了北桥,只不过把串行总线拿到内部而已)几乎都将采用串行技术,同等速率下(假设内存无影响下),肯定是32位数据传送更快,排队过桥肯定人少 的更快过去。
5、除此之外,实际上除了北桥和CPU和内存,主板上就没什么东西了,主体PCI总线几乎都是并行的,显卡模块也是独立出的,影响很小。

四:总结
1、纵观上述分析,所以在相同的硬件环境下,这个环境必须要包含到硬盘或CPU的串行总线(原因是这两者影响最大,原因下面分析),64位的肯定没有32位快。(固态硬盘除外)
2、有意的人为设计出使用固态硬盘和全并行环境,那么两者理论速度相当,目前业界还没到这个水平和需求的时候。反之,也可以有意的人为设计出让32位运行慢,而64位运行快的系统。
3、64位系统和软件的重要优点不能不提,那就是更加精确、精细。jexleven的问题也出来结果了,那就是玩3D游戏,64位界面绝对要比32位界面更加漂亮,音质更好,还有一堆“更大"(内存更大、硬盘更大,理论上并行的东西支持也更多),试试便知。
4、以后如果使用固态硬盘或把普通硬盘的瓶颈问题解决,并且前端总线速度跟上去,那么64位系统运行速度将会有较大提升,与32位系统速度差距也会越来越小,当然了,使用专业的测试软件仍然是可以测试出差距的(架构可能调整,结果暂时也无法确定)。

以上来自网络收集 以下为个人见解

五:关于32位和64位系统的其它问题综合

1、装32位操作系统运行快,还是64位操作系统运行快?
从总体运行效率看,肯定是32位系统快,对于系统硬件配置不是太高端的用户,推荐安装32位操作系统。

2、我是否有必要安装64位操作系统?
对于做科学运算、工程制图、3D制作、音频视频编辑的用户,推荐尝试安装64位操作系统,那样更能彰显64位的优势,前提是软件是64位的。
(或许只有固态硬盘才能体现出这些优势。如果是普通机械硬盘,或许还没32系统运行感觉好。)

3、买电脑时商家总是推荐支持64位是怎么回事?
不要相信商家所谓的64位支持,纯粹是寻找卖点而已。

对于普通常用软件来说。就算是固态硬盘,64位也是不如32位的。要想在64位体现优势,高性能硬盘和64位软件缺一不可。

原文地址:http://user.qzone.qq.com/754631993/blog/1330926360

woshicheng1990
小菜寻路 很感谢你,不过这不是我目前想了解的。
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Python+OpenCV计算机视觉

Python+OpenCV计算机视觉

为什么cpu的地址总线位数与主存成2的n次方关系?

一根地址线,代表一个bit位,n位宽度的地址总线可寻址范围是2的n次方个地址。 比如:若只有一根地址总线,那么可以索引地址0、地址1的两个内存地址。 若有两根地址总线,那么可以索引2^2=4个内存地址:00、01、10、11 以此类推,32位地址总线,能够索引2的32次方个地址,即4G内存地址空间。 为什么是这样?

怎么实现两个int类型的整数 a与b之和的位数与a的位数相同,输出true?

怎么实现两个int类型的整数 a与b之和的位数与a的位数相同,输出true

关于汇编语言中一根地址总线能访问多少数据的疑问

在学习汇编语言时,第一章学习到了地址总线的内容,随即而来就是关于计算CPU寻址能力的问题。作为刚入门的小萌新,对书上的两句话表示疑惑。 首先,补充一下关于存储单元的知识,一个存储单元可以存储一个字节(Byte),8个比特即8个二进制数(bit)组成一个Byte,即一个存储单元可存储8个二进制位。 > ①“一根导线可以传送的稳定状态只有两种,高电平和低电平。用二进制表示就是1或0,10根导线可以传送10位二进制数据。” * 理解:此处理解为一根导线只有两种状态,即只可以传2的一次方的数据,即一位二进制数。 > ②“一个CPU有N根地址线,则可以说这个CPU的地址总线的宽度为N。这样的CPU最多可以寻找2的N次方个内存单元。” * 理解:最后一句话中的内存单元应该指的就是存储单元吧?如果是的话,那这句话表达的意思岂不是,N根地址线可寻找2的N次方个Byte?即一根地址线能找一个Byte,即一根地址线能找8个二进制位数? 那这样这两句话岂不是自相矛盾?二者表达的相差了2的8次方啊。

int型的数字最大输出上限是不是9位呀,为什么我一旦输入10位数它就没数值了?

// IP地址转换.cpp #include "iostream" #include "windows.h" using namespace std; int main() { int i=0,j; long r=0; int x=0,y=0; int a[1000]; cin>>r; while(r!=0) { a[i]=r%16; r=r/16; i++; } for(j=i-1;j>=0;j--) { if(j%2==1) x=a[j]*16; else if(j%2==0&&j!=0) { y=a[j]*1; y=x+y; cout<<y<<"."; } else { y=a[j]*1; y=x+y; cout<<y; } } cout<<'\n'; system("pause"); return 0; } //我想输入一个十进制数,然后把它变成16进制,最后以ip地址的形式数出来。 但在这里我一旦输入10位数,它就没用了。

一根地址线只能传输一个二进制,为什么寻址能力8KB的CPU的地址总线宽度却为13而非16?

汇编语言王爽的习题1.1有这么一道题: 1个CPU寻址能力为8KB,那么它的地址总线宽度为____ (答案为13,https://bbs.csdn.net/wap/topics/370194477有解释) 可我认为是16!因为8KB=8 * 1024 B=2^13 B=2^16 bit,所以N=16 我看到上面的答案都不把B转换成bit,这是为什么呢?书上说如果有N根地址线,那么地址总线宽度为2^N,而一根地址线只有0、1两种状态的二进制,那我自然应该先把单位转换成bit才能用2^N这个公式吧?实在不明白为什么要保留个byte。 --------------------------------------------------------------------- 书上说,一根导线可以传送的稳定状态只有两种——可如果寻址寻的是字节,岂不是说一根导线可以传送的稳定状态却有8种嘛? 而且书上对于“CPU地址总线宽度”的定义:一个CPU有N根地址线,则可以说这个CPU的地址总线宽度为N。 从以上定义,总线宽度应该只和地址线数量有关,和其他一切都无关。而一根地址线只能传送2种状态,所以我认为应该使用bit来计算而不是byte

关于c语言指针变量做函数参数中题目的一些疑问

题目如下:我的问题都在代码的备注里了,求解答!!谢谢!!! 验证卡布列克运算。即:任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: (1)将组成该四位数的四个数字由大到小排列,形成由这四个数字构成的最大的四位数; (2)将组成该四位数的四个数字由小到大排列,形成由这四个数字构成的最小的四位数(如果四个数字中含有0,则得到的数不足四位); (3)求两个数的差,得到一个新的四位数(高位零保留)。 重复以上过程,最后得到的结果总是6174。这个数被称为卡布列克常数。请编写一个递归函数,完成以上的卡布列克运算。 **输入格式要求:"%d" 提示信息:"Enter number:" **输出格式要求:" [%d]:%d-%d=%d\n" 程序运行示例如下: Enter number: 1234 [1]:4321-1234=3087 [2]:8730-378=8352 [3]:8532-2358=6174 ``` #include <stdio.h> int count=0; main() { int n; printf("Enter number:"); scanf("%d",&n); vr6174(n); } vr6174(int num) //为什么函数前面没有类型?这样也可以吗? { int each[4],max,min; if(num!=6174&&num) //这里的第二个num是什么意思? { parse_sort(num,each); max_min(each,&max,&min); num=max-min; printf(" [%d]:%d-%d=%d\n",++count,max,min,num); vr6174(num); } } parse_sort(int num,int *each) { int i,*j,*k,temp; for(i=0;i<=4;i++) { j=each+3-i;//each是什么?j又是什么? *j=num%10; num/=10; } for(i=0;i<3;i++) for(j=each,k=each+1;j<each+3-i;j++,k++) if(*j>*k) { temp=*j; *j=*k; *k=temp;} return; //return什么??? } max_min(int *each,int *max,int *min) { int *i; *min=0; for(i=each;i<each+4;i++)//这里的each是什么 *min=*min*10+*i; *max=0; for(i=each+3;i>=each;i--) *max=*max*10+*i; return; } ```

怎么把int16组转换成int8数组#python#。

在处理灰度图片时,读取了一个int16的数组,想把该数组转换成8位数组。 直接用np.int8() 是抛弃了二进制的前8位,与计算结果不符。 但是对数组做运算时出现了下面代码的问题 ```python import numpy as np a = np.array([32767,32765,1044,254],'int16') print('方法1:') b = (a*255)//32767 print(b) print(b.dtype) print('方法2:') for i in range(len(a)): a[i] = a[i]*255//32767 print(a) ``` 上面代码输出结果: ``` 方法1: [ 0 0 0 -1] int16 方法2: [255 254 8 1] ``` 方法二的输出是正确的,但是图片数据很大,用for循环的方法太慢了,请问各位有我哪里出了错误吗?除了循环还有其他方法吗?

新手求助:统计满足条件的4位数

题目:统计满足条件的4位数 【题目描述】 给定若干个四位数,求出其中满足以下条件的数的个数:个位数上的数字减去千位数上的数字,再减去百位数上的数字,再减去十位数上的数字的结果大于零。 【输入】 输入为两行,第一行为四位数的个数n,第二行为n个的四位数。(n≤100) 【输出】 输出为一行,包含一个整数,表示满足条件的四位数的个数。 【输入样例】 5 1234 1349 6119 2123 5017 【输出样例】 3 ``` #include<iostream> #include<cstdio> using namespace std; int main() {char a,b,c,d; int n,y=0; cin>>n; for(int i=1;i<=n;i++) {scanf("%c%c%c%c",&a,&b,&c,&d); if((d-a-b-c)>0) y++; } cout<<y<<endl; return 0; } ``` 请问哪里出错了?运行时答案错误

Golang怪异big.Int行为,位数很少

<div class="post-text" itemprop="text"> <p>I am trying to calculate the GCD of two numbers via the Euclidean method, and noticed weird behavior. Although I am passing the value of the number to the function, the numbers are modified by the function for numbers with low number of bits (usually less than 64). Could anyone clarify if this is a mistake on my behalf or is it expected behavior? You can check the code in the playground here: <a href="https://play.golang.org/p/BIoZO1QWpV" rel="nofollow noreferrer">Golang playground example</a></p> <p>I thought the expected behavior is that no values should be changed by passing them to my functions. Thanks for any help, I couldn't find any other occurrences like this in the last day of searching.</p> </div>

JNA 读取内存中的指针地址比实际的长

通过接口得到了一个内存的指针,通过这个指针得到了在读取另一个指针的时候,其地址后面比正确地址多了一段。

有一个关于整型指针二维数组的问题

int x[4][4],y[4][4],z=0,o=0;//z表示的是当前矩阵中的非零数字的数量,z为16则说明数字排满了,本局输了 //o表示最大数字的值,本例设定的是1024 typedef int row[4]; //row代表具有4个元素的整型数组 row *p=x, *q=y;//P是整型指针数组,有4组,每组有4个元素。p[1]=x[1]=*(x+1) 这是别人写的2048源码的一部分,想问一下,这里为什么要先定义一个有4个元素的整型数组,然后再用这个去定义一个指针然后取二位数组的首地址 如果我这里去掉 typedf int row[4] 然后直接 int *p=x 这样能表示二位数组吗?和上面的那种方式有什么区别呢_?

C语言中变量类型的范围会因为CPU的位数变化而不同吗?

C语言中变量类型(short、int、long、char、float、double)的范围会因为CPU的位数变化而不同吗?这里的位数指的是什么?和操作系统的位数是同样的东西吗?

关于输入一个不超过五位的整数然后判断位数,分别输出每一位,最后输出这个数的倒序数字的问题。

#include<stdio.h>; int main() { double a; int i,b,c,d=10,r; printf("输入一个不超过五位的数\n"); scanf("%d",&a); if(100000>a&&a>=10000) { printf("%d是一个五位数\n",a); c=b=a/10000; printf("%d\n",c); r=c; for(i=1000;10>i;i=i/10); { b=a/i-10*c; r=r+d*b; d=10*d; c=10*c+b; printf("%d",b); printf("%d",r); } } else if(9999>=a&&a>=1000) { printf("%d是一个四位数\n",a); c=b=a/1000; printf("%d\n",c); r=c; for(i=100;10>i;i=i/10); { b=a/i-10*c; r=r+d*b; d=10*d; c=10*c+b; printf("%d",b); printf("%d",r); } } else if(999>=a&&a>=100) { printf("%d是一个三位数\n",a); c=b=a/100; printf("%d\n",c); r=c; for(i=10;10>i;i=i/10); { b=a/i-10*c; r=r+d*b; d=10*d; c=10*c+b; printf("%d",b); printf("%d",r); } } else if(99>=a&&a>=10) { printf("%d是一个两位数\n",a); c=b=a/10; printf("%d\n",c); r=c; for(i=10;10>i;i=i/10); { b=a/i-10*c; r=r+d*b; d=10*d; c=10*c+b; printf("%d",b); } } else printf("%d是一个一位数\n%d\n",a) ; return 0; } 运行结果不正确,而且伴有输出随机数。 这一段代码错在哪里?

求代码:求整数的位数及各位数字之和(用C语言)

对于给定的正整数N,求它的位数及其各位数字之和。 输入格式: 输入在一行中给出一个不超过10 ​9 ​​ 的正整数N。 输出格式: 在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。 请问哪位大神能给出代码来。

请问如何用Python求一个四位数?

请问如何用Python求一个四位数,其中这个四位数正好是一个数的平方,前两位数字是相同的,后两位数字也是相同的,但与前两位数字不同,用Python求这个四位数?

c语言问题求解,请大神们指教

本题要求实现一个对数组进行循环右移的简单函数:一个数组aa中存有nn(>0>0)个整数,将每个整数循环向右移mm(\ge 0≥0)个位置,即将aa中的数据由(a_0 a_1 \cdots a_{n-1}a ​0 ​​ a ​1 ​​ ⋯a ​n−1 ​​ )变换为(a_{n-m} \cdots a_{n-1} a_0 a_1 \cdots a_{n-m-1}a ​n−m ​​ ⋯a ​n−1 ​​ a ​0 ​​ a ​1 ​​ ⋯a ​n−m−1 ​​ )(最后mm个数循环移至最前面的mm个位置)。 函数接口定义: int ArrayShift( int a[], int n, int m ); 其中a[]是用户传入的数组;n是数组的大小;m是右移的位数。函数ArrayShift须将循环右移后的数组仍然存在a[]中。#include <stdio.h> #define MAXN 10 int ArrayShift( int a[], int n, int m ); int main() { int a[MAXN], n, m; int i; scanf("%d %d", &n, &m); for ( i = 0; i < n; i++ ) scanf("%d", &a[i]); ArrayShift(a, n, m); for ( i = 0; i < n; i++ ) { if (i != 0) printf(" "); printf("%d", a[i]); } printf("\n"); return 0; } /* 你的代码将被嵌在这里 */

arcgis10.4.1中双精度型无法设置精度和小数位数。

请问 arcgis10.4.1中 双精度型无法设置精度和小数位数是什么原因啊?我添加字段时填写了精度 15和小数位数 4 但是生成的字段 两者都是0。

c++,二位数组输入和输出不符

如题,小范围输入没问题,大范围输入输出就不一样了。 ``` #include<iostream> #include<cstdio> using namespace std; int a[2010][2010],b=0,c,d[20][20]; int main(){ //freopen("in.txt","r",stdin); //打开文件 //freopen("out.txt","w",stdout); //打开文件 int n; cin>>n; for(int i=0;i<n;i++){ for(int j=0;j<n;j++) cin>>a[i][j]; } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cout<<a[i][j]<<" "; } cout<<endl; } //fclose(stdin); //关文件 //fclose(stdout); //关文件 return 0; } ``` 测试数据 http://otxkng4mb.bkt.clouddn.com/in.txt

从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数

从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数

2019 Python开发者日-培训

2019 Python开发者日-培训

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

设计模式(JAVA语言实现)--20种设计模式附带源码

设计模式(JAVA语言实现)--20种设计模式附带源码

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

java后台+微信小程序 实现完整的点餐系统

java后台+微信小程序 实现完整的点餐系统

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

2019 AI开发者大会

2019 AI开发者大会

玩转Linux:常用命令实例指南

玩转Linux:常用命令实例指南

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Git 实用技巧

Git 实用技巧

Python数据清洗实战入门

Python数据清洗实战入门

使用TensorFlow+keras快速构建图像分类模型

使用TensorFlow+keras快速构建图像分类模型

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

程序员的算法通关课:知己知彼(第一季)

程序员的算法通关课:知己知彼(第一季)

MySQL数据库从入门到实战应用

MySQL数据库从入门到实战应用

机器学习初学者必会的案例精讲

机器学习初学者必会的案例精讲

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

.net core快速开发框架

.net core快速开发框架

玩转Python-Python3基础入门

玩转Python-Python3基础入门

Python数据挖掘简易入门

Python数据挖掘简易入门

微信公众平台开发入门

微信公众平台开发入门

程序员的兼职技能课

程序员的兼职技能课

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

HoloLens2开发入门教程

HoloLens2开发入门教程

微信小程序开发实战

微信小程序开发实战

Java8零基础入门视频教程

Java8零基础入门视频教程

相关热词 c# 局部 截图 页面 c#实现简单的文件管理器 c# where c# 取文件夹路径 c# 对比 当天 c# fir 滤波器 c# 和站 队列 c# txt 去空格 c#移除其他类事件 c# 自动截屏
立即提问