<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/rss/stylesheet/" type="text/xsl"?>
<rss xmlns:content='http://purl.org/rss/1.0/modules/content/' xmlns:taxo='http://purl.org/rss/1.0/modules/taxonomy/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:itunes='http://www.itunes.com/dtds/podcast-1.0.dtd' xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0" xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:atom='http://www.w3.org/2005/Atom' xmlns:podbridge='http://www.podbridge.com/podbridge-ad.dtd' version='2.0'>
<channel>
  <title>kongsor&apos;s cms</title>
  <language>zh-cn</language>
  <generator>microfeed.org</generator>
  <itunes:type>episodic</itunes:type>
  <itunes:explicit>false</itunes:explicit>
  <atom:link rel="self" href="https://cms.kongsor.cc/rss/" type="application/rss+xml"/>
  <link>https://cms.kongsor.cc</link>
  <description>
    <![CDATA[<p>一生万物 万法归宗</p>]]>
  </description>
  <itunes:author>kongsor</itunes:author>
  <itunes:image href="https://cdn.kongsor.cc/cms-kongsor-cc/production/images/channel-fe23375b1a3c794b15d8e3aebe52af08.png"/>
  <image>
    <title>kongsor&apos;s cms</title>
    <url>https://cdn.kongsor.cc/cms-kongsor-cc/production/images/channel-fe23375b1a3c794b15d8e3aebe52af08.png</url>
    <link>https://cms.kongsor.cc</link>
  </image>
  <copyright>©2025</copyright>
  <itunes:category text="Arts"/>
  <itunes:category text="Science"/>
  <itunes:category text="Religion &amp; Spirituality"/>
  <item>
    <title>二进制基本 算术运算 逻辑运算 位移运算 及其 汇编指令</title>
    <guid>gyuXUXJDT0k</guid>
    <pubDate>Tue, 07 Jan 2025 09:47:51 GMT</pubDate>
    <itunes:explicit>false</itunes:explicit>
    <description>
      <![CDATA[<p>二进制基本 算术运算 逻辑运算 位移运算 及其 汇编指令</p><p><br></p><p>算术运算汇编指令：加add 减sub 乘mul 除div 余mod 开方sqrt</p><p>逻辑运算汇编指令：与and 或or 非not 异或xor 求大max 求小min</p><p>位移运算汇编指令：左移SHL 右移SHR 算数左移SAL 算术右移SAR 循环右移（相当于乘以2的多次方，但计算更快速。）</p><p><br></p><p>（11得1 10得1 01得1 11得0 10得0 01得0 00得1 00得0 八种情况 八卦）</p><p><br></p><p>一：算术运算：</p><p>加法：11得0（异或门） 进位1（与门） 10得1（异或门） 01得1（异或门） 00得0（异或门）</p><p>减法：11得0 10得1 01得1 借位1 00得0</p><p>乘法：按被乘数 每位权重，被乘数×1=被乘数（1×1=1 0×1=0），被乘数×0=全是0（1×0=0 0×0=0），每个结果 按位权重 相加。</p><p>除法：</p><p>1. 从左往右 按照被除数逐位比较，能除则减，不能则借位。</p><p>2. 记录每步的商，最后得到商和余数。</p><p>开方：</p><p><br></p><p>一切 算术运算，都可 归结 简化 为 基本 二进制 逻辑运算。</p><p><br></p><p>最初只有 与非 或非 逻辑门 电路，取反（反相器），之后 才是 与门 或门 电路。</p><p>{</p><p>在数字逻辑电路的发展过程中，最初确实只有与非门（NAND gate）和或非门（NOR gate），以及取反器（反相器，也称为非门或NOT gate）。这三种基本逻辑门是构建更复杂逻辑电路的基础。</p><p><br></p><p>与非门（NAND gate）是一种通用的逻辑门，因为它可以用来实现任何其他类型的逻辑门。通过适当的组合，与非门可以实现与门（AND gate）、或门（OR gate）、以及非门（NOT gate）的功能。例如：</p><p>两个与非门串联可以实现一个与门。</p><p>两个与非门并联可以实现一个或门。</p><p>单个与非门的输出端连接到其输入端之一可以实现一个非门。</p><p>由于与非门的这种灵活性，它被认为是一种“完备”的逻辑门，意味着它可以单独用来构建任何布尔逻辑函数。</p><p><br></p><p>或非门（NOR gate）同样是一种强大的逻辑门，它也可以用来实现所有其他类型的逻辑门。通过适当的组合，或非门也可以实现与门、或门和非门的功能。例如：</p><p>两个或非门串联可以实现一个与门。</p><p>两个或非门并联可以实现一个或门。</p><p>单个或非门的输出端连接到其输入端之一可以实现一个非门。</p><p>因此，无论是使用与非门还是或非门，都可以构建出所有必要的逻辑功能。这两种门都是数字电路设计中不可或缺的元素。随着技术的发展，直接的与门和或门也被广泛使用，但它们的基本构造仍然依赖于与非门和或非门的组合。</p><p>}</p><p>异或 最初 就是 异或门。取反 叫 同或门 电路。相同得1 不同得0。</p><p><br></p><p>二：逻辑运算：</p><p>与、或、非、与非、或非、异或、同或。</p><p><br></p><p>中文和英文简写：</p><p>与：and</p><p>或：or</p><p>非：not</p><p>与非：nand(not and)</p><p>或非：nor(not or)</p><p>异或：xor(x or)</p><p>同或：xnor(x not or)</p><p><br></p><p>有一个对应法则口诀：</p><p>与：and -&gt;有0出0，全1出1。 1，1-&gt;1 1，0-&gt;0 0，1-&gt;0 0，0-&gt;0</p><p>或：or-&gt;有1出1，全0出0。1，1-&gt;1 1，0-&gt;1 0，1-&gt;1 0，0-&gt;0</p><p>非：not -&gt;有1出0，有0出1。：1-&gt;0 0-&gt;1</p><p>与非：nand-&gt;先按与的操作，然后结果取反。1，1-&gt;0 1，0-&gt;1 0，1-&gt;1 0，0-&gt;1</p><p>或非：nor -&gt;先按或的操作，然后结果取反。1，1-&gt;0 1，0-&gt;0 0，1-&gt;0 0，0-&gt;1</p><p>异或：xor-&gt;相异为1，相同为0。1，1-&gt;0 1，0-&gt;1 0，1-&gt;1 0，0-&gt;0</p><p>同或：xnor-&gt;相同为1，相异为0。1，1-&gt;1 1，0-&gt;0 0，1-&gt;0 0，0-&gt;1</p><p><br></p><p><br></p><p>11得1（与运算 或运算 同或运算）</p><p>10得0（与运算 或非运算 同或运算）</p><p>01得0（与运算 或非运算 同或运算）</p><p>10得1（或运算 与非运算 异或运算）</p><p>01得1（或运算 与非运算 异或运算）</p><p>00得0（与运算 或运算 异或运算）</p><p>11得0（异或运算 与非运算 或非运算）</p><p>00得1（同或运算 与非运算 或非运算）</p><p><br></p><p>2个二进制逻辑数得1个二进制逻辑数：排列组合有：2×2×2=8种情况 8种结果 6种逻辑运算（非运算 不算）</p><p><br></p><p>X86架构与ARM架构 CPU处理器 的 算术指令 以及 GPU显卡 算术指令 都 包含了 加减乘除 开方 运算。</p><p><br></p><p>与运算 与 或运算 不可逆，无法反推。</p><p><br></p><p>非运算 和 异或运算 可逆，可以反推。</p><p><br></p><p>C语言 位运算 异或运算 的 符号 "^"。</p><p>A^B=C</p><p>C^B=A</p><p>C^A=B</p><p>A可以是原文。B可以是秘钥。C可以是密文。可以加解密。</p><p><br></p><p>可以无需第三方变量 交换a与b的值：</p><p>a=a^b;</p><p>b=a^b;</p><p>a=a^b;</p><p><br></p><p><br></p><p>三：在计算机中，负数是以补码的形式表示的：</p><p><br></p><p>补码是一种二进制数的表示方法，它使得计算机中的加法和减法运算可以统一处理，简化了计算机的硬件设计。</p><p>在补码系统中，</p><p>正数的补码与其原码相同，</p><p>负数的补码是其原码除符号位外所有位取反（即0变1，1变0）后加1得到的。</p><p>这种表示方式有助于简化计算过程，尤其是在进行加减运算时，</p><p>因为补码允许使用同一种电路来处理加法和减法，从而减少了计算机内部电路的复杂性。</p><p><br></p><p>以8位二进制数为例，</p><p>+8的二进制表示为00001000，</p><p>其补码也是00001000。</p><p>而对于-8，首先找到其绝对值8的原码00001000，</p><p>然后除符号位外其他位取反得到11110111，</p><p>最后加1得到补码11111000。</p><p>这样，无论是正数还是负数，都可以用同样的规则来计算其补码，</p><p>进而在计算机中使用统一的加法器来进行所有的算术运算。</p><p><br></p><p>在计算机系统中，无论是加法、减法还是乘法和除法，补码都是处理有符号数的主要方式。</p><p>补码的使用简化了计算机的硬件设计，特别是对于减法和乘法这样的运算。</p><p>在乘法运算中，补码允许直接对操作数进行乘法操作，而无需担心符号位的处理，</p><p>因为补码表示法已经将符号位融入到数值的表示之中。</p><p><br></p><p>补码乘法的运算过程涉及到将被乘数和乘数转换为补码形式，然后进行乘法运算，</p><p>最后根据结果的符号位确定最终的符号，</p><p>并将乘积转换为补码形式以得到最终结果。</p><p>这种处理方式不仅适用于整数乘法，也适用于浮点数乘法，尽管浮点数的表示和运算更为复杂。</p>]]>
    </description>
    <link>https://cms.kongsor.cc/i/gyuXUXJDT0k/</link>
    <itunes:episodeType>full</itunes:episodeType>
  </item>
</channel>
</rss>