首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

不会乘法怎么乘法?这个远古的算法竟然可以!

点击“博文视点Broadview”,获取更多书讯 很多人都说背乘法表是他们教育经历中特别痛苦的一件事。问父母为什么要背乘法表,父母通常会说不背就不会做乘法。他们大错特错。...俄罗斯农夫乘法(Russian  peasant multiplication, RPM)就是在不了解大部分乘法表的情况下进行大数相乘的方法。...我们通过减半、翻倍和加法完成了乘法运算,这些都不需要背诵乘法表。为了理解为什么这种方法行得通,试着将倍列改写为18的倍数(表7)。...对于那些已经记住了乘法表的人来说,RPM似乎毫无意义。但是除了它的历史魅力,RPM还有几个值得学习的原因。 首先,RPM表明,即使是像乘法这样枯燥的事情,也可以通过多种方法来实现,而且是创造性方法。...但是,RPM 展示了数字的二进制展开与一种便捷的乘法方法之间的深层联系,这个乘法方法只需要最低限度的乘法表知识。

1.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    大佬是怎么优雅实现矩阵乘法的?

    内容很简单,就是在CPU上实现单精度矩阵乘法。看了一下,结果非常好:CPU的利用率很高。更可贵的是核心代码只有很短不到200行。 之前总觉得自己很了解高性能计算,无外乎就是“局部性+向量”随便搞一搞。...我们知道一般矩阵乘法就是一堆循环的嵌套,这个也不例外。在代码里,最外层结果是输出矩阵的行遍历。...还剩一个,我们先把A的第一行第一列的数字读出来,把它复制8份拓展成一个ymm,然后和这三个B的ymm作element-wise的乘法,把结果累加到ymm0~ymm2里。 现在发现这个算法的精妙了么?...其实有很多选择,比如我们把ymm12~ymm14往下移动一行,和第一行第二列的数字做乘法,如下图: ? (⚠️ 这个是低效的做法)正确性上来说,上面的做法没问题。...但我们来看看下图里大佬是怎么做的: ?

    74220

    详解Python中的算术乘法、数组乘法与矩阵乘法

    (1)算术乘法,整数、实数、复数、高精度实数之间的乘法。 ? (2)列表、元组、字符串这几种类型的对象与整数之间的乘法,表示对列表、元组或字符串进行重复,返回新列表、元组、字符串。 ?...数组与标量相乘,等价于乘法运算符或numpy.multiply()函数: ? 如果两个数组是长度相同的一维数组,计算结果为两个向量的内积: ?...如果两个数组是形状分别为(m,k)和(k,n)的二维数组,表示两个矩阵相乘,结果为(m,n)的二维数组,此时一般使用等价的矩阵乘法运算符@或者numpy的函数matmul(): ?...6)numpy矩阵与矩阵相乘时,运算符*和@功能相同,都表示线性代数里的矩阵乘法。 ? 7)连乘,计算所有数值相乘的结果,可以使用标准库函数math.prod(),Python 3.8之后支持。

    9.2K30

    理解矩阵乘法

    这个结果是怎么算出来的?...怎么会有这么奇怪的规则? 我一直没理解这个规则的含义,导致《线性代数》这门课就没学懂。研究生时发现,线性代数是向量计算的基础,很多重要的数学模型都要用到向量计算,所以我做不了复杂模型。...前些日子,受到一篇文章的启发,我终于想通了,矩阵乘法到底是什么东西。关键就是一句话,矩阵的本质就是线性方程式,两者是一一对应关系。如果从线性方程式的角度,理解矩阵乘法就毫无难度。...老实说,从上面这种写法,已经能看出矩阵乘法的规则了:系数矩阵第一行的2和1,各自与 x 和 y 的乘积之和,等于3。不过,这不算严格的证明,只是线性方程式转为矩阵的书写规则。 下面才是严格的证明。...矩阵乘法的计算规则,从而得到证明。 =========================================

    1.5K71

    怎么编译Linux内核?

    Linux 内核介绍 Linux内核(英语:Linux kernel)是一种开源的类Unix操作系统宏内核。...整个Linux操作系统家族基于 该内核部署在传统计算机平台(如个人计算机和服务器,以Linux发行版的形式)和各种嵌入式平台,如路由器、无线接入点、专用小交换机、机顶盒、FTA接收器、智能电视、数字视频录像机...工作于平板电脑、智能手机及智能手表的Android操作系统,它的底层操作系统也是Linux。尽管在桌面计算机的占用率较低,但基于Linux的操作系统统治了几乎从移动设备到主机的其他全部领域。...实际Linux的发行版Ubuntu,其易用性也逐渐接近Windows。...Linux kernel官网:https://www.kernel.org/ linux Kernel维基百科:https://www.wiki.kernel.org/ 在线阅读linux kernel

    10K20
    领券