原创 指針學習筆記(1)——運算符*

1.       指針是一個地址,而指針變量時存放地址的變量。 2.       變量的指針就是變量的地址,存放變量地址的變量是指針變量,它用來指向另一個變量。 3.       一個指針變量只能指向同一個類型的變量。 4.       

原创 指針學習筆記(3)——小結

1. 形式如(*)p 的p表示指向什麼的指針變量,例如: int * p:          p爲指向執行數據的指針變量 int (*P)[n]:    p爲指向包含n個元素的一維數組的指針變量,即數組指針 int (*p)():   

原创 冒泡排序法、選擇排序法和插入排序法的排序過程

1.       冒泡排序法:n個數從小到大排序,經過n-1趟循環,每次循環中兩兩比較相鄰兩個數的大小,前者大於後者則將兩數交換,直到最後一個,每次通過不斷交換相鄰兩數將未排序中的最大的那個數交換到排序中的最前一位。 2.      

原创 參考51單片機示例程序要注意的一點

網上買的很多模塊的示例程序很多都是基於51內核的,51單片機簡單適合入門,但也正是因爲簡單,在參考51單片機程序設計時需要注意一些東西,今天就簡單說一點: 51單片機在使用引腳的時候,是不需要配置引腳模式,輸入輸出模式,驅動模式等,所以在

原创 C++ Primer 筆記——第一部分(基本語言)

第1章 快速入門 main函數的返回值必須是int型。 C++並沒有直接定義進行輸入輸出的任何語句,這種功能是由標準庫提供的。 endl是一個特殊值,將它寫入到輸出流時,具有輸出換行的效果,並刷新與設備相關聯的緩衝區。通

原创 51單片機存儲器小結

存儲器分爲程序存儲器(ROM)和數據存儲器(RAM),兩種又都可以分爲片內和片外,片外即需要自己在單片機外部擴展。 8051單片機的片內程序存儲器有4K,片內數據存儲器有256個字節,其中又分爲高128字節位特殊功能寄存器區,真正用戶能用

原创 堆棧的生長方向

堆棧的生長方向從最本質的理解是堆棧入棧方向是從高地址向地址還是低地址向高地址。 從高地址向低地址生長一般叫做向下生長,也叫作逆向生長。 從低地址向高地址生長一般叫做向上生長,也叫作正向生長。 一般來說堆棧是逆向生長的。 51單片機的堆棧生

原创 浮點數據與4個單字節的轉換

前言: 在串口、IIC、SPI等數據傳送時基本上都是一次傳送一個字節的數據,如果要傳送浮點數據? 通常是將浮點數乘以一個倍數,如10,100,1000,10000等,然後將其轉換爲整型數據再轉化爲單個字節進行傳送。如果這個數據是要進行顯示

原创 大小端模式

大端模式:高字節放低地址,低字節放高地址 小端模式:高字節放高地址,低字節放低地址 一個數0x1234中0x12位高字節,0x34爲低字節。 51單片機:大端模式 80x86微機:小端模式 STM32:小端模式 以下是測試大小端模式的程

原创 Linux網絡配置腳本

查看網絡配置:ifconfig 配置腳本文件:/etc/sysconfig/network-scripts/ifcfg-eth0 虛擬機三種網絡模式:橋接模式、僅主機模式、NAT模式 NAT模式配置腳本示例: 橋接模式配置腳本示例

原创 指針學習筆記(2)——基本操作

int a[10]; int * p; in i; p=a; 1.       數組名a代表數組首元素的地址,它是一個指針常量,它的值在程序運行期間是固定不變的。 2.       “p=a”的作用是將數組a的首元素的地址賦給指針變量p。

原创 指針學習筆記(4)——指針與數組

指針變量 要點 1.任何指針變量佔用的空間都是4個字節(32位機) 2.任何指針變量加1是使它指向下一個元素的地址 測試程序 void test_1() { char c; int i; long l; float f; d

原创 單片機和串口設備通訊設計時要注意的幾個問題

現在有很多外設喜歡通過UART接口進行通訊控制,比如串口WIFI模塊,串口藍牙模塊,串口HMI等等。因爲基本上每款單片機都有UART這個硬件設備,這使得通過UART來控制的外設可以在衆多單片機系統中使用。 單片機和單片機串口通訊,單片機和

原创 快速排序、歸併排序、大頂堆排序、希爾排序代碼實現

快速排序 O(n*log2_n) O(log2_n) 不穩定 // 將數組排序並分成兩組 int Partition(int a[], int low, int high) { int pivotval = a[low]; whi

原创 UART、IIC、SPI串行通信協議小結

UAR:通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter) 引腳:2根        RXD:接收數據        TXD:發送數據數據格式:         起始位