<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>HI RISC-V 资源中心</title>
<link>https://www.hi-riscv.cn/blog/</link>
<description>RISC-V 指令教程、实战案例与生态动态</description>
<language>zh-CN</language>
<item>
<title>RISC-V 是什么？5 分钟认识这个开源指令集</title>
<link>https://www.hi-riscv.cn/blog/what-is-riscv/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/what-is-riscv/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>RISC-V 是一个开源的处理器指令集架构：任何人都可以免费用它设计处理器。这篇文章用最短的篇幅讲清它是什么、一条指令长什么样、以及为什么值得学。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 08：拆开一条指令——RV32I 编码格式</title>
<link>https://www.hi-riscv.cn/blog/rv32i-08-encoding/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-08-encoding/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>终讲：亲手把 addi 和 beq 编码成 32 位机器码，看懂 R/I/S/B/U/J 六种格式，以及 B 型立即数「打乱排列」背后的硬件智慧。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 07：lui、auipc 与伪指令——汇编的糖</title>
<link>https://www.hi-riscv.cn/blog/rv32i-07-lui-pseudo/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-07-lui-pseudo/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>12 位立即数装不下大常数怎么办？lui 与 auipc 的装配术、li/la/mv/ret 这些伪指令背后的真身，以及为什么「糖」让汇编更好读。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 06：逻辑与移位——位操作入门</title>
<link>https://www.hi-riscv.cn/blog/rv32i-06-bitwise/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-06-bitwise/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>and/or/xor 与 sll/srl/sra 六条指令的位操作实战：掩码、置位清位翻转、算术右移为什么存在，以及不用临时变量交换两数。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 05：函数调用——jal、栈与调用约定</title>
<link>https://www.hi-riscv.cn/blog/rv32i-05-functions/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-05-functions/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>汇编的成人礼：jal 如何把返回地址存进 ra、栈帧怎么搭怎么拆、a0-a7 与 caller/callee-saved 的分工，并用递归阶乘串起全部。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 04：分支与循环——让程序学会做决定</title>
<link>https://www.hi-riscv.cn/blog/rv32i-04-branches/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-04-branches/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>六条分支指令撑起所有 if 与循环：beq/bne/blt/bge 的用法、RISC-V 没有 jmp 的事实、以及 while 和 for 的汇编模板。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 03：内存读写——load 与 store</title>
<link>https://www.hi-riscv.cn/blog/rv32i-03-memory/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-03-memory/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>RV32I 是 load-store 架构：算术只碰寄存器，数据进出内存只有 lw/sw 一族。讲透偏移寻址、小端字节序与符号扩展。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 02：算术指令——加减法与比较</title>
<link>https://www.hi-riscv.cn/blog/rv32i-02-arithmetic/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-02-arithmetic/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>RV32I 的加减法与比较指令：为什么没有 subi、溢出了会怎样、以及 RISC-V 抛弃 flags 寄存器后比较怎么做。</description>
</item>
<item>
<title>从零学 RISC-V 汇编 01：认识寄存器——CPU 的 32 个抽屉</title>
<link>https://www.hi-riscv.cn/blog/rv32i-01-registers/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/rv32i-01-registers/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>CPU 工作前先认识工作台：RV32I 的 32 个通用寄存器、x0 为什么恒为零、ABI 名字怎么读，以及你的第一条汇编指令 addi。</description>
</item>
<item>
<title>L01 · 1969 年，只发出了两个字母</title>
<link>https://www.hi-riscv.cn/blog/l01-first-two-bytes/</link>
<guid isPermaLink="true">https://www.hi-riscv.cn/blog/l01-first-two-bytes/</guid>
<pubDate>Mon, 14 Sep 2026 08:00:00 +0800</pubDate>
<description>《一个 hello 的冒险》第 1 讲：从 1969 年 ARPANET 的 LO 事故讲起，先跑通一对 40 行的 TCP 程序，再用 strace、ss、tcpdump 三扇窗观察一次 write()，最后潜入内核源码回答——socket 为什么是一个 fd？</description>
</item>
</channel>
</rss>
