【RISC-V 指令集】RISC-V DSP 擴展指令集介紹(二)

前言:

本筆記是基于對RISC-V ?DSP擴展指令集文檔總結的,《P-ext-proposal.pdf》文檔的關鍵內容如下:
主要介紹了RISC-V的P擴展指令集及其相關細節。

首先,對P擴展指令進行了概述,并列出了其與其他擴展重復的指令。

接著,詳細描述了P擴展的子集,包括Zbpbo擴展和Zpn擴展(適用于RV32和RV64)的指令。

此外,還提供了僅適用于RV64的詳細指令描述。
文檔還介紹了新的用戶控制和狀態寄存器,并提供了指令編碼表。最后,列出了因RVB重疊而被移除的指令。
這份文檔為RISC-V的P擴展指令集提供了全面而詳細的信息,包括指令的描述、編碼、以及與其他擴展的關系。這對于理解、開發和優化基于RISC-V架構的系統非常有價值。同時,文檔也提醒了開發者在使用P擴展時需要注意的兼容性和優化問題。

【RISC-V 指令集】RISC-V DSP 擴展指令集介紹(一)-CSDN博客

3.2. 部分SIMD數據處理指令

3.2.1. 16位組包指令

Table 12. 16-bit Packing Instructions

序號指令說明
1PKBB16 rd, rs1, rs2Pack two 16-bit data from Bottoms
2PKBT16 rd, rs1, rs2Pack two 16-bit data Bottom & Top
3PKTB16 rd, rs1, rs2Pack two 16-bit data Top & Bottom
4PKTT16 rd, rs1, rs2Pack two 16-bit data from Tops

3.2.2. ?最高有效字“32x32”乘法和加法指令

Table 13. Signed MSW 32x32 Multiply and Add Instructions

序號指令說明
1SMMUL rd, rs1, rs2MSW “32 x 32” Signed Multiplication (MSW 32 = 32x32)
2SMMUL.u rd, rs1, rs2MSW “32 x 32” Signed Multiplication with Rounding (MSW 32 = 32x32)
3KMMAC rd, rs1, rs2MSW “32 x 32” Signed Multiplication and Saturating Addition (MSW 32 = 32 + 32x32)
4KMMAC.u rd, rs1, rs2MSW “32 x 32” Signed Multiplication and Saturating Addition with Rounding (MSW 32 = 32 + 32x32)
5KMMSB rd, rs1, rs2MSW “32 x 32” Signed Multiplication and Saturating Subtraction (MSW 32 = 32 - 32x32)
6KMMSB.u rd, rs1, rs2MSW “32 x 32” Signed Multiplication and Saturating Subtraction with Rounding (MSW 32 = 32 - 32x32)
7KWMMUL rd, rs1, rs2MSW “32 x 32” Signed Multiplication & Double (MSW 32 = 32x32 << 1)
8KWMMUL.u rd, rs1, rs2MSW “32 x 32” Signed Multiplication & Double with Rounding (MSW 32 = 32x32 << 1)

3.2.3. ?最高有效字“32x16”乘法和加法指令

Table 14. Signed MSW 32x16 Multiply and Add Instructions

序號指令說明
1SMMWB rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication (MSW 32 = 32x16)
2SMMWB.u rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication with Rounding (MSW 32 = 32x16)
3SMMWT rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication (MSW 32 = 32x16)
4SMMWT.u rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication with Rounding (MSW 32 = 32x16)
5KMMAWB rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication and Saturating Addition (MSW 32 = 32 + 32x16)
6KMMAWB.u rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication and Saturating Addition with Rounding (MSW 32 = 32 + 32x16)
7KMMAWT rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication and Saturating Addition (MSW 32 = 32 + 32x16)
8KMMAWT.u rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication and Saturating Addition with Rounding (MSW 32 = 32 + 32x16)
9KMMWB2 rd, rs1, rs2MSW “32 x Bottom 16” Saturating Signed Multiplication and double (MSW 32 = (32x16) << 1)
10KMMWB2.u rd, rs1, rs2MSW “32 x Bottom 16” Saturating Signed Multiplication and double with Rounding (MSW 32 = (32x16) << 1)
11KMMWT2 rd, rs1, rs2MSW “32 x Top 16” Saturating Signed Multiplication and double (MSW 32 = (32x16) << 1)
12KMMWT2.u rd, rs1, rs2MSW “32 x Top 16” Saturating Signed Multiplication and double with Rounding (MSW 32 = (32x16) << 1)
13KMMAWB2 rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication & double and Saturating Addition (MSW 32 = 32 + (32x16)<<1)
14KMMAWB2.u rd, rs1, rs2MSW “32 x Bottom 16” Signed Multiplication & double and Saturating Addition with Rounding (MSW 32 = 32 + (32x16)<<1)
15KMMAWT2 rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication & double and Saturating Addition (MSW 32 = 32 + (32x16)<<1)
16KMMAWT2.u rd, rs1, rs2MSW “32 x Top 16” Signed Multiplication & double and Saturating Addition with Rounding (MSW 32 = 32 + (32x16)<<1)

3.2.4. 帶32位加/減法的有符號16位乘法指令

Table 15. Signed 16-bit Multiply 32-bit Add/Subtract Instructions

序號指令說明
1SMBB16 rd, rs1, rs2Signed Multiply Bottom 16 & Bottom 16 (32 = 16x16)
2SMBT16 rd, rs1, rs2Signed Multiply Bottom 16 & Top 16 (32 = 16x16)
3SMTT16 rd, rs1, rs2Signed Multiply Top 16 & Top 16 (32 = 16x16)
4KMDA rd, rs1, rs2Two “16x16” and Signed Addition (32 = 16x16 + 16x16)
5KMXDA rd, rs1, rs2Two Crossed “16x16” and Signed Addition (32 = 16x16 + 16x16)
6SMDS rd, rs1, rs2Two “16x16” and Signed Subtraction (32 = 16x16 - 16x16)
7SMDRS rd, rs1, rs2Two “16x16” and Signed Reversed Subtraction (32 = 16x16 - 16x16)
8SMXDS rd, rs1, rs2Two Crossed “16x16” and Signed Subtraction (32 = 16x16 - 16x16)
9KMABB rd, rs1, rs2“Bottom 16 x Bottom 16” with 32-bit Signed Addition (32 = 32 + 16x16)
10KMABT rd, rs1, rs2“Bottom 16 x Top 16” with 32-bit Signed Addition (32 = 32 + 16x16)
11KMATT rd, rs1, rs2“Top 16 x Top 16” with 32-bit Signed Addition (32 = 32 + 16x16)
12KMADA rd, rs1, rs2Two “16x16” with 32-bit Signed Double Addition (32 = 32 + 16x16 + 16x16)
13KMAXDA rd, rs1, rs2Two Crossed “16x16” with 32-bit Signed Double Addition (32 = 32 + 16x16 + 16x16)
14KMADS rd, rs1, rs2Two “16x16” with 32-bit Signed Addition and Subtraction (32 = 32 + 16x16 - 16x16)
15KMADRS rd, rs1, rs2Two “16x16” with 32-bit Signed Addition and Reversed Subtraction (32 = 32 + 16x16 - 16x16)
16KMAXDS rd, rs1, rs2Two Crossed “16x16” with 32-bit Signed Addition and Subtraction (32 = 32 + 16x16 - 16x16)
17KMSDA rd, rs1, rs2Two “16x16” with 32-bit Signed Double Subtraction (32 = 32 - 16x16 - 16x16)
18KMSXDA rd, rs1, rs2Two Crossed “16x16” with 32-bit Signed Double Subtraction (32 = 32 - 16x16 - 16x16)

3.2.5. 帶64位加/減法的有符號16位乘法指令

Table 16. Signed 16-bit Multiply 64-bit Add/Subtract Instructions

序號指令說明
1SMAL rd, rs1, rs2“16 x 16” with 64-bit Signed Addition (64 = 64 + 16x16)

3.2.6. 其他指令

Table 17. Partial-SIMD Miscellaneous Instructions

序號指令說明
1SCLIP32 rd, rs1, imm5uSigned Clip Value
2UCLIP32 rd, rs1, imm5uUnsigned Clip Value
3CLRS32 rd, rs132-bit Count Leading Redundant Sign
4CLZ32 rd, rs132-bit Count Leading Zero
5PBSAD rd, rs1, rs2Parallel Byte Sum of Absolute Difference
6PBSADA rd, rs1, rs2Parallel Byte Sum of Absolute Difference Accumulation

3.2.7. 帶32位加法的8位乘法指令

Table 18. 8-bit Multiply with 32-bit Add Instructions

序號指令說明
1SMAQA rd, rs1, rs2Four signed “8x8” with 32-bit Signed Addition (32 = 32 + 8x8 + 8x8 + 8x8 + 8x8)
2UMAQA rd, rs1, rs2Four unsigned “8x8” with 32-bit Unsigned Addition (32 = 32 + 8x8 + 8x8 + 8x8 + 8x8)
3SMAQA.SU rd, rs1, rs2Four “signed 8 x unsigned 8” with 32- bit Signed Addition (32 = 32 + 8x8 + 8x8 + 8x8 + 8x8)

3.3?64位數據計算指令

3.3.1 64位加減指令

Table 19. 64-bit Add/Subtract Instructions

序號指令說明
1ADD64 rd, rs1, rs264-bit Addition
2RADD64 rd, rs1, rs264-bit Signed Halving Addition
3URADD64 rd, rs1, rs264-bit Unsigned Halving Addition
4KADD64 rd, rs1, rs264-bit Signed Saturating Addition
5UKADD64 rd, rs1, rs264-bit Unsigned Saturating Addition
6SUB64 rd, rs1, rs264-bit Subtraction
7RSUB64 rd, rs1, rs264-bit Signed Halving Subtraction
8URSUB64 rd, rs1, rs264-bit Unsigned Halving Subtraction
9KSUB64 rd, rs1, rs264-bit Signed Saturating Subtraction
10UKSUB64 rd, rs1, rs264-bit Unsigned Saturating Subtraction

3.3.2 32位乘法與64位加減指令

Table 20. 32-bit Multiply 64-bit Add/Subtract Instructions

序號指令說明
1SMAR64 rd, rs1, rs232x32 with 64-bit Signed Addition
2SMSR64 rd, rs1, rs232x32 with 64-bit Signed Subtraction
3UMAR64 rd, rs1, rs232x32 with 64-bit Unsigned Addition
4UMSR64 rd, rs1, rs232x32 with 64-bit Unsigned Subtraction
5KMAR64 rd, rs1, rs232x32 with Saturating 64-bit Signed Addition
6KMSR64 rd, rs1, rs232x32 with Saturating 64-bit Signed Subtraction
7UKMAR64 rd, rs1, rs232x32 with Saturating 64-bit Unsigned Addition
8UKMSR64 rd, rs1, rs232x32 with Saturating 64-bit Unsigned Subtraction

3.3.3 帶符號16位乘法與64位加減指令

Table 21. Signed 16-bit Multiply 64-bit Add/Subtract Instructions

序號指令說明
1SMALBB rd, rs1, rs2“Bottom 16 x Bottom 16” with 64-bit Signed Addition (64 = 64 + 16x16)
2SMALBT rd, rs1, rs2“Bottom 16 x Top 16” with 64-bit Signed Addition (64 = 64 + 16x16)
3SMALTT rd, rs1, rs2“Top 16 x Top 16” with 64-bit Signed Addition (64 = 64 + 16x16)
4SMALDA rd, rs1, rs2Two “16x16” with 64-bit Signed Double Addition (64 = 64 + 16x16 + 16x16)
5SMALXDA rd, rs1, rs2Two Crossed “16x16” with 64-bit Signed Double Addition (64 = 64 + 16x16 + 16x16)
6SMALDS rd, rs1, rs2Two “16x16” with 64-bit Signed Addition and Subtraction (64 = 64 + 16x16 - 16x16)
7SMALDRS rd, rs1, rs2Two “16x16” with 64-bit Signed Addition and Reversed Subtraction (64 = 64 + 16x16 - 16x16)
8SMALXDS rd, rs1, rs2Two Crossed “16x16” with 64-bit Signed Addition and Subtraction (64 = 64 + 16x16 - 16x16)
9SMSLDA rd, rs1, rs2Two “16x16” with 64-bit Signed Double Subtraction (64 = 64 - 16x16 - 16x16)
10SMSLXDA rd, rs1, rs2Two Crossed “16x16” with 64-bit Signed Double Subtraction (64 = 64 - 16x16 - 16x16)

3.4?非SIMD指令

3.4.1 Q15飽和說明

Table 22. Non-SIMD Q15 saturation ALU Instructions

序號指令說明
1KADDH rd, rs1, rs2Add with Q15 saturation
2KSUBH rd, rs1, rs2Subtract with Q15 saturation
3KHMBB rd, rs1, rs2Multiply the first 16- bit Q15 elements of two registers and transform the Q30 result into a saturated Q15 number.
4KHMBT rd, rs1, rs2Multiply the first 16- bit Q15 element of one register with the second 16-bit Q15 element of another register and transform the Q30 result into a saturated Q15 number.
5KHMTT rd, rs1, rs2Multiply the second 16-bit Q15 elements of two registers and transform the Q30 result into a saturated Q15 number.
6UKADDH rd, rs1, rs2Add with I16 saturation
7UKSUBH rd, rs1, rs2Subtract with I16 saturation

3.4.2 Q31飽和指令

Table 23. Non-SIMD Q31 saturation ALU Instructions

序號指令說明
1KADDW rd, rs1, rs2Add with Q31 saturation
2UKADDW rd, rs1, rs2Unsigned Add with U32 saturation
3KSUBW rd, rs1, rs2Subtract with Q31 saturation
4UKSUBW rd, rs1, rs2Unsigned Subtract with U32 saturation
5KDMBB rd, rs1, rs2Multiply the first 16- bit Q15 elements of two registers and transform the Q30 result into a saturated Q31 number.
6KDMBT rd, rs1, rs2Multiply the first 16- bit Q15 element of one register with the second 16-bit Q15 element of another register and transform the Q30 result into a saturated Q31 number.
7KDMTT rd, rs1, rs2Multiply the second 16-bit Q15 elements of two registers and transform the Q30 result into a saturated Q31 number.
8KSLRAW rd, rs1, rs2Shift Left Logical with Q31 Saturation or Shift Right Arithmetic
9KSLRAW.u rd, rs1, rs2Shift Left Logical with Q31 Saturation or Rounding Shift Right Arithmetic
10KSLLW rd, rs1, rs2Saturating Shift Left Logical for 32-bit Word
11KSLLIW rd, rs1, imm5uSaturating Shift Left Logical Immediate for 32-bit Word
12KDMABB rd, rs1, rs2Multiply the first 16- bit Q15 elements of two registers and transform the Q30 result into a saturated Q31 number. Add the Q31 number with a 32-bit accumulator.
13KDMABT rd, rs1, rs2Multiply the first 16- bit Q15 element of one register with the second 16-bit Q15 element of another register and transform the Q30 result into a saturated Q31 number. Add the Q31 number with a 32-bit accumulator.
14KDMATT rd, rs1, rs2Multiply the second 16-bit Q15 elements of two registers and transform the Q30 result into a saturated Q31 number. Add the Q31 number with a 32-bit accumulator.
15KABSW rd, rs132-bit Absolute Value (scalar version)

3.4.3 32位計算指令

Table 24. 32-bit Computation Instructions

序號指令說明
1RADDW rd, rs1, rs232-bit Signed Halving Addition
2URADDW rd, rs1, rs232-bit Unsigned Halving Addition
3RSUBW rd, rs1, rs232-bit Signed Halving Subtraction
4URSUBW rd, rs1, rs232-bit Unsigned Halving Subtraction
5MULR64 rd, rs1, rs2Multiply Word Unsigned to 64-bit data
6MULSR64 rd, rs1, rs2Multiply Word Signed to 64-bit data
7MSUBR32 rd, rs1, rs2Multiply and Subtract from 32-bit Word

3.4.4 溢流/飽和狀態操作說明

Table 25. OV (Overflow) flag Set/Clear Instructions

序號指令說明
1RDOV rdRead vxsat.OV to rd.
2CLROVClear vsat.OV flag

3.4.5 其他指令

Table 22. Non-SIMD Q15 saturation ALU Instructions

序號指令說明
1AVE rd, rs1, rs2Average with rounding
2SRA.u rd, rs1, rs2Rounding Shift Right Arithmetic
3SRAI.u rd, rs1, imm5u/imm6uRounding Shift Right Arithmetic Immediate
4BITREV rd, rs1, rs2Bit Reverse
5BITREVI rd, rs1, imm5u/imm6uBit Reverse Immediate
6WEXT rd, rs1, rs2Extract 32-bit from a 64-bit value
7WEXTI rd, rs1, imm5uExtract 32-bit from a 64-bit value Immediate
8CMIX rd, rs2, rs1, rs3Conditional Mix
9INSB rd, rs1, imm2u/imm3uInsert Byte
10MADDR32 rd, rs1, tbMultiply and Add to 32-bit Word
11MSUBR32 rd, rs1, tbMultiply and Subtract from 32-bit Word
12MAX rd, rs1, rs2Signed Word Maximum
13MIN rd, rs1, rs2Signed Word Minimum

?RISC-V? DSP擴展指令集文檔:

https://download.csdn.net/download/u011376987/88898800

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/714722.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714722.shtml
英文地址,請注明出處:http://en.pswp.cn/news/714722.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java 的notify 可能導致死鎖原因詳解

假設有一個共享資源庫 ResourcePool&#xff0c;它內部維護了兩類資源&#xff1a;ResourceTypeA 和 ResourceTypeB。現在有兩個線程 Thread1 和 Thread2&#xff0c;它們都需要從資源庫中分別獲取一種資源才能繼續執行。Thread1 需要 ResourceTypeA 而 Thread2 需要 ResourceT…

上位機圖像處理和嵌入式模塊部署(當前機器視覺新形態)

【 聲明&#xff1a;版權所有&#xff0c;歡迎轉載&#xff0c;請勿用于商業用途。 聯系信箱&#xff1a;feixiaoxing 163.com】 過去的機器視覺處理&#xff0c;大部分都是集中在上位機、或者是服務器領域&#xff0c;這種形式維持了很長的時間。這種業務形態下&#xff0c;無…

windows 11 藍牙突然消失

解決方法&#xff1a; 1.WinX&#xff0c;點擊設備管理器 2.選中藍牙&#xff0c;右鍵更新驅動。 3.然后就可以出現了&#xff0c;如下圖

Django多個app配置多個域名訪問

環境&#xff1a;Python 3.8.1 Django 2.2.12 項目目錄結構&#xff1a; CellMiddle -- 項目根目錄 ├─task --- 需求系統 │ ├─migrations │ ├─static │ └─templates ├─logs --- 日志目錄 ├─doc --- 文檔系統 │ ├─data │ ├─migrations │ ├─st…

程序員是如何看待“祖傳代碼”的?

目錄 ?編輯 程序員是如何看待“祖傳代碼”的&#xff1f; 一、什么是“祖傳代碼”&#xff1f; 二、“祖傳代碼”的利弊 1. 可以節省開發成本 2. 可能引入安全隱患 3. 可能增加系統的維護難度 三、祖傳代對程序員的影響 1. 豐富程序員的技能和知識 2. 提高程序員的創…

python筆記_進制

二進制 進位規則&#xff1a;滿2進1 范圍&#xff1a;0,1 符號&#xff1a;以0b和0B開頭 八進制 進位規則&#xff1a;滿8進1 范圍&#xff1a;0-7 符號&#xff1a;以0o和0O開頭 十進制 進位規則&#xff1a;滿10進1 范圍&#xff1a;0-9 十六進制 進位規則&#xff…

Python——Tchisla求解器(暴力搜索法)

Tchisla簡介 最近玩到一個挺有意思的數字解密小游戲《Tchisla》&#xff0c;其規則類似算24點&#xff0c;也是利用一些數學運算和初始數字計算出目標數字&#xff0c;與算24點不同的是&#xff0c;Tchisla允許不限次數地使用一種初始數字&#xff08;1~9&#xff09;&#xf…

【VSCODE修改代碼行間距】解決方案

在我們編碼的過程中&#xff0c;由于顯示字體和顯示器的不同&#xff0c;會需要調整行間距&#xff0c;在vscode默認的選項中沒有看到設定行間距的選項&#xff0c;不過&#xff0c;可以手動修改配置檔達到目的。 1.打開設置 2.打開配置檔&#xff0c;手動進行設定 3.在選項中添…

第七十二天 漏洞發現-Web框架中間件聯動GobyAfrogXrayAwvsVulmap

第72天 漏洞發現-Web框架中間件&聯動&Goby&Afrog&Xray&Awvs&Vulmap 知識點&#xff1a; 1、Bup簡單介紹&使用說明 2、Xray簡單介紹&使用說明 3、AWWS簡單介紹&使用說明 4、Goby簡單介紹&使用說明 5、Afrog簡單介紹&使用說明 6、…

帶你玩轉java封裝和繼承(上)

上次帶大家學習了java里面比較重要的知識點類和對象&#xff0c;而且我們知道java是一門面向對象的語言&#xff0c;有時一個程序里可能有很多類&#xff0c;那么這么多類他們之間有什么聯系嗎&#xff1f;今天就帶大家學習一下java類之間的關系。 什么是繼承&#xff1a; 我們…

Linux信號【systemV】

目錄 前言 正文&#xff1a; 1消息隊列 1.1什么是消息隊列&#xff1f; 1.2消息隊列的數據結構 1.3消息隊列的相關接口 1.3.1創建 1.3.2釋放 1.3.3發送 1.3.4接收 1.4消息隊列補充 2.信號量 2.1什么是信號量 2.2互斥相關概念 2.3信號量的數據結構 2.4…

lambda表達式 —— 過濾再排序未生效問題排查

背景 項目中有個場景&#xff0c;需要將一個列表先按要求過濾&#xff0c;再根據某字段排序。圖方便使用lambda表達式修改原列表將過濾和排序邏輯寫到一行&#xff0c;打印輸出列表發現過濾未生效。 代碼示例&#xff1a; List<Long> productIdList Arrays.asList(1L);…

向爬蟲而生---Redis 探究篇4<Redis主從復制(1)>

前言: 當涉及到Redis的高可用性和數據冗余時&#xff0c;主從復制是一個非常重要的概念。 在現代應用程序的開發中&#xff0c;數據的可靠性和高可用性是至關重要的。當涉及到數據冗余和故障恢復時&#xff0c;Redis主從復制成為一個必不可少的工具和技術。Redis主從復制是一…

藍橋杯-單片機組基礎5——外部中斷與LED的控制(附小蜜蜂課程代碼)

藍橋杯單片機組備賽指南請查看這篇文章&#xff1a;戳此跳轉藍橋杯備賽指南文章 本文章針對藍橋杯-單片機組比賽開發板所寫&#xff0c;代碼可直接在比賽開發板上使用。 型號&#xff1a;國信天長4T開發板&#xff08;綠板&#xff09;&#xff0c;芯片&#xff1a;IAP15F2K6…

自學軟件測試怎么學?

軟件測試是一個變得越來越受歡迎的行業&#xff0c;在IT行業里面&#xff0c;也是初學比較容易的。但對小白而言&#xff0c;怎樣學習才能做到快速入門&#xff0c;少走彎路呢&#xff1f; 步驟一&#xff1a;初學學軟件測試&#xff0c;要先搞懂這種問題 要想進入到軟件測試…

Android Duplicate class 排除重復類

一、起因&#xff1a; 在迭代開發的時候&#xff0c;發現2個ijk很多類重復。但又2個庫實現的功能是不一樣&#xff0c;目前不能合并。但又想保留2個功能。需要排除其中一個庫。 二、報錯如何下圖&#xff1a; 三、解決方法&#xff1a; 3.1 在terminal 也就是命令行處輸入 …

Golang 并發機制 CSP模型

Golang 并發機制 CSP模型 1 前言 go語言的最大兩個亮點&#xff0c;一個是 goroutine &#xff0c;一個就是 chan 了。二者合體的典型應用CSP&#xff0c;基本就是大家認可的并行開發神器&#xff0c;簡化了并行程序的開發難度&#xff0c;我們來看一下CSP。 2 CSP是什么 C…

在Windows 11中運行磁盤清理工具的9種方法,總有一種適合你

自Windows98以來,微軟在操作系統中包含了一個內置的清理工具。當用戶轉向第三方清理應用程序時,這個值得信賴的實用程序站穩了腳跟。微軟甚至宣布,第三方應用程序幾乎毫無用處,刪除注冊表項不是一個好主意。 磁盤清理工具可以幫助刪除臨時文件、舊的更新日志、縮略圖緩存和…

git安裝與使用4.3

一、git的安裝 1、下載git包 下載git包url&#xff1a;https://git-scm.com/download/win 下載包分為&#xff1a;64位和32位 2、點擊安裝包 2、選擇安裝路徑 3、 點擊下一步 4、點擊next 5、點擊next 6、點擊next 7、 8、 9、 10、 11、 12、在桌面空白處&#xff0c;右鍵…

【SpringBoot】測試單元使用多線程

&#x1f4dd;個人主頁&#xff1a;五敷有你 &#x1f525;系列專欄&#xff1a;SpringBoot ??穩重求進&#xff0c;曬太陽 問題產生 今天學習了樂觀鎖&#xff0c;但在測試單元執行多線程的時候出現了問題&#xff0c;多線程并沒有直接結果 在控制臺沒有任何輸出…