[返回] [最新] [最热门] [最高评价]

汇编语言入门教程

学习编程其实就是学高级语言,即那些为人类设计的计算机语言。

但是,计算机不理解高级语言,必须通过编译器转成二进制代码,才能运行。学会高级语言,并不等于理解计算机实际的运行步骤。

计算机真正能够理解的是低级语言,它专门用来控制硬件。汇编语言就是低级语言,直接描述/控制 CPU 的运行。如果你想了解 CPU 到底干了些什么,以及代码的运行步骤,就一定要学习汇编语言。

汇编语言不容易学习,就连简明
...

阮一峰 2018-01-21 18:17 | 查看: 133

加密货币的本质

去年,比特币暴涨,其他币也像雨后春笋一样冒出来,已经有1000多种了。

很多人都在问,加密货币(cryptocurrency)的时代,真的来临了吗?将来会不会人类不再使用美元、人民币,改用加密货币?那么多品种,我应该使用哪一种币?要不要现在就去投资一些?

这些问题的答案,我也想知道,就花了很多时间查阅资料、研究协议。前两周发表的《区块链入门教程》和《比特币入门教程》,是我的学习心得。但是,那两
...

阮一峰 2018-01-11 08:02 | 查看: 464

比特币入门教程

比特币(bitcoin)诞生于2008年的一篇论文。

一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有任何人负责,你把它当作钱付给对方,怎么会有人愿意接受?

但是,狂想居然变成了现实。随后的几年,在全世界无数爱好者的支持下,比特币网络运行起来了,越来越多的人和资本参与,星星之火,终成燎原。刚刚过去的
...

阮一峰 2018-01-04 08:07 | 查看: 535

区块链入门教程

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。

可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释。

下面,我就来尝试,写一篇最好懂的区块链教程。毕竟它也不是很难的东西,核心概念非常简单,几句话就能说清楚。我希望读完本文,你不仅可以理解区块链,还会明白什么是挖矿、为什么挖矿越来越难等问题。

需要说明的是,我并非这方面的专家。虽然很早
...

阮一峰 2017-12-26 20:40 | 查看: 498

持续集成服务 Travis CI 教程

编写代码只是软件开发的一小部分,更多的时间往往花在构建(build)和测试(test)。

为了提高软件开发的效率,构建和测试的自动化工具层出不穷。Travis CI 就是这类工具之中,市场份额最大的一个。

本文介绍 Travis CI 的基本用法。用好这个工具不仅可以提高效率,还能使开发流程更可靠和专业化,从而提高软件的价值。而且,它对于开源项目是免费的,不花一分钱,就能帮你做掉很多事情。
...

阮一峰 2017-12-19 20:09 | 查看: 352

图像与滤波

我对图像处理一直很感兴趣,曾经写过好几篇博客(1,2,3,4)。

前几天读到一篇文章,它提到图像其实是一种波,可以用波的算法处理图像。我顿时有一种醍醐灌顶的感觉,从没想到这两个领域是相关的,图像还可以这样玩!下面我就来详细介绍这篇文章。

一、为什么图像是波?

我们知道,图像由像素组成。下图是一张 400 x 400 的图片,一共包含了 16 万个像素点。

每个像素的颜色,可以用红、绿、蓝、
...

阮一峰 2017-12-13 08:16 | 查看: 430

北方的空地

最近有一部电影《77天》,讲述一个探险者在荒原独自旅行的故事。

我以为电影是虚构的,没想到改编自真人真事。2010年,一个名叫杨柳松的青年,徒步穿越羌塘,1400公里的无人区,平均海拔5000米,走了77天。

他把这段经历,写成了一本书《北方的空地》。

我读了,越读越佩服。这完全不是普通的冒险,跟川藏线的骑行是两个概念。不仅仅需要勇气和意志,还需要广博的知识,以及准确的现场判断,一个决定错
...

阮一峰 2017-12-05 20:29 | 查看: 518

博客文集《前方的路》发布

年初,我定了一个目标:今年要完成三本书。

第一本书是 《ES6 标准入门(第三版)》(官网,源码),今年9月已经出版。

第二本书是 《未来世界的幸存者》(官网,源码),两周前写完。它是我对于未来的看法。

第三本书是 《前方的路》(官网,源码),昨天完成,总结了我走过的人生道路。

我写博客十多年了,从一个愤青 + 文青的学生,变成如今沉默寡言的中年人。一路上,随手写下的文字,累积有1000多
...

阮一峰 2017-11-23 08:19 | 查看: 586

Bash 脚本 set 命令教程

服务器的开发和管理离不开 Bash 脚本,掌握它需要学习大量的细节。

set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本文介绍它的基本用法,让你可以更安心地使用 Bash 脚本。

一、简介

我们知道,Bash 执行脚本的时候,会创建一个新的 Shell。

$ bash script.sh

上面代码中,script.sh是在一个新的 Shell 里面
...

阮一峰 2017-11-15 08:19 | 查看: 674

技术教育的兴起

如果你经常看这个博客,可能知道我正在写一本书《未来世界的幸存者》。

最近两年,我对未来的看法大变,感到很悲观。这本书就是我想解释给大家听,为什么未来你没有机会。

"总的来看,下一代青年不太可能像上一代有那么多机会。经济增长已经开始放缓,还将继续放缓;人口增长高峰已经过去;除了高科技,几乎所有行业都不会有以前那么高的增长率。

现在是穷人,未来极大可能还是穷人,能翻身的只能是少数,而且难度越来
...

阮一峰 2017-11-07 07:54 | 查看: 765

双因素认证(2FA)教程

所谓认证(authentication)就是确认用户的身份,是网站登录必不可少的步骤。

密码是最常见的认证方法,但是不安全,容易泄露和冒充。

越来越多的地方,要求启用双因素认证(Two-factor authentication,简称 2FA)。本文介绍它的概念和实现方法。

文章结尾有一则活动消息,优达学城(Udacity)的"双十一优惠",课程最高减免1111元。

一、双因素认证的概念
...

阮一峰 2017-11-02 08:06 | 查看: 643

CSS 框架 Bulma 教程

网页样式需要大量时间开发,最省事的方法就是使用 CSS 框架。

Bootstrap 是最著名的 CSS 框架,但是今天我想推荐另一个更轻量化、更易用的框架----Bulma。有了它,即使完全不懂 CSS,也可以轻而易举做出美观的网页。

我要感谢 100offer 对我提供赞助。100offer 是国内第一流的人力资源网站,本文结尾有他们的简介,最近想换工作的朋友可以看一下。

一、简介

Bu
...

阮一峰 2017-10-24 07:48 | 查看: 463

...更多...