Fast Fourier Transform Algorithm for 51 Microcontrollers

Fast Fourier Transform Algorithm for 51 Microcontrollers

A faster version can be found in the C language implementation of FFT and IFFT source code, which does not depend on a specific platform. The porting is very simple, does not rely on other libraries, and allows customization of the number of points. The algorithm is derived from the usage instructions of the FFT … Read more

Solving the Monkey Peach Problem with Python

1 Problem On the beach, there is a pile of peaches, and five monkeys come to share them. The first monkey divides the pile into five equal parts, but there is one left over. This monkey throws the extra one into the sea and takes one part. The second monkey divides the remaining peaches into … Read more

Daily Programming Challenge: C++ Soda Bottle Problem

Programming is a skill that is essential in many fields related to computer science and artificial intelligence. This programming ability plays an important role in both learning and work. Therefore, the beginner has decided to create a new section called “Daily Challenge,” where they will strengthen and exercise their programming skills by solving a programming … Read more

From Slow to SIMD: Discussing Go Bounds Check Elimination

From Slow to SIMD: Discussing Go Bounds Check Elimination

In the translated article from Slow to SIMD, a SourceGraph engineer discusses one optimization technique known as Bounds Check Elimination (BCE), and poses a question to the readers: “ Why use a[i:i+4:i+4] instead of a[i:i+4]? The first part of this article answers this question. The second part introduces a better method for bounds check elimination. … Read more

When Will Go Officially Support SIMD?

When Will Go Officially Support SIMD?

Single Instruction Multiple Data (<span>SIMD</span>) is a parallel computing technology that allows a single instruction to process multiple data points simultaneously. SIMD is widely used in modern CPUs and can significantly enhance the performance of compute-intensive tasks such as image processing, machine learning, and scientific computing. As the application of the Go language in high-performance … Read more

Optimizing Manual Addition of New MCU Support in JLink V7.62

Optimizing Manual Addition of New MCU Support in JLink V7.62

Hello everyone, I am Pi Zi Heng, a serious tech enthusiast. Today, I will share with you how JLink 7.62 optimizes the method for manually adding support for new MCU models. The JLink tool is an essential artifact for microcontroller development, including a hardware emulator (with different versions: EDU/BASE/PLUS/WIFI/ULTRA+/PRO) and driver software for PC (frequently … Read more

Two Go Routing Libraries – Chi and HttpRouter

Two Go Routing Libraries - Chi and HttpRouter

In Go language web development, choosing the right routing library is crucial. Chi and HttpRouter are both lightweight routing solutions favored by developers, each with its own characteristics suitable for different scenarios.Among them, Chi is a feature-rich modular router built on the standard library net/http, known for its modular design and strong middleware support. It … Read more

C++ Permutation Wizards: A Comprehensive Guide to next_permutation and prev_permutation

C++ Permutation Wizards: A Comprehensive Guide to next_permutation and prev_permutation

Today, we will delve into the two “permutation wizards” in the C++ standard library— the next_permutation and prev_permutation functions. They are like gymnasts in the world of numbers, elegantly transforming sequences into all possible permutations! 🎯 Function Usage Instructions 📋 Function Signatures // Default comparison using <bool next_permutation(BidirectionalIterator first, BidirectionalIterator last);bool prev_permutation(BidirectionalIterator first, BidirectionalIterator last);// … Read more

Core Concepts | Summary of Public Basic Knowledge Points for Computer Level 2 C Language

Core Concepts | Summary of Public Basic Knowledge Points for Computer Level 2 C Language

“Click the blue text to follow us”Summary of Computer Level 2 Knowledge PointsChapter 1 | Data Structures and Algorithms 1.1 Algorithm Complexity 01Basic Concepts of Algorithms ①. An algorithm is an accurate and complete description of a problem-solving method. 【Note: An algorithm is not equal to a program, nor is it equal to a computational … Read more

GESP C++ Level Examination Guide for Youth: From Beginner to Expert

GESP C++ Level Examination Guide for Youth: From Beginner to Expert

Written by Teacher Wu (with six years of experience in teaching children’s programming, having guided many students to win provincial and national competition awards) This guide is based on real experiences. What is GESP? Why is it worth taking? GESP is a programming ability level certification launched by CCF (China Computer Federation), equivalent to a … Read more