原创 數據類型與數據傳送指令

數據類型與數據傳送指令 數據類型、數據傳送指令、間接尋址 一、數據類型 數據類型的基本特徵是以數據爲的數目度量的大小,其他特徵主要是爲了方便程序員記憶變量中存儲的數據類型,默認情況下大小寫不敏感。 類型 描述 BYTE

原创 ELF格式文件詳細分析

ELF(Executable and Linkable Format)是一種對象文件的格式,用於定義不同類型的對象文件(Object files)中都放了什麼東西、以及都以什麼樣的格式去放這些東西。 一、簡介 1、分類 可重定位

原创 ubuntu 16.04 中配置Eclipse c++開發環境

Eclipse 是跨平臺的開發工具,在ubuntu中使用十分方便。 安裝時要安裝 JDK、Eclipse、CDT 三部分。 一、安裝JDK 1、下載JDK,並解壓 下載地址: http://www.oracle.com/tech

原创 加載、存儲浮點數

1、浮點數據類型 類型 意義 QWORD 64位整數 TBYTE 80位整數(10字節) REAL4 32位整數(4 字節) REAL8 64位整數(8 字節) REAL10 80位整數(10字節)

原创 ubuntu 中修改用戶名後sudo無法解析主機

在ubuntu中修改用戶名後,使用sudo命令,一直提示:sudo無法解析主機。 在網上搜了下,找到了解決方法: 正確修改用戶名的姿勢是: sudo gedit /etc/hosts 第二行就是主機名: 修改後,用新的主機

原创 關於運算符"operator

問題描述: 在類定義的公有函數中,定義友元函數“operator<<”,在編譯的時候提示“類成員是私有的,無法訪問”。 編譯器:G++ 解決方法: 將 運算符”operator<<” 的定義放在類聲明中進行。 實例如下: clas

原创 彙編 LEA指令

LEA指令返回間接操作數的偏移地址。由於間接操作數可能使用一個或多個寄存器,因此其偏移值是在運行時計算的。 void makeArray( ){ char myString[30]; for(int i = 0;i

原创 32位處理器的寄存器介紹

32位處理器有三種操作模式:保護模式、實地址模式和系統管理模式。 保護模式:基本模式,所有指令和特性都是可用的 實地址模式:實現程序設計環境 系統管理模式:提供實現電源管理模式和系統安全等功能的機制 一、地址空間 保護模式下,32

原创 堆棧指針ESP和EBP

(1)ESP:棧指針寄存器(extended stack pointer),其內存放着一個指針,該指針永遠指向系統棧最上面一個棧幀的棧頂(下一個壓入棧的活動記錄的頂部),是棧指針。 (2)EBP:基址指針寄存器(extended

原创 穿越五年的時空,重回三元湖畔

端午假期的時候,一大學同學結婚,那段時間不是很忙,遂請假兩天,趕去煙臺參加,正好也回母校看看。 母校位於黃海之濱,風景秀麗,在這裏度過了大學的四年時光。這四年裏,我從一個從未出過遠門的學生,逐漸學習專業知識。瞭解社會。時光如白駒過

原创 C++構造函數與析構函數

  C++規定,每個類必須有默認的構造函數,沒有構造函數就不能創建對象。   若沒有提供任何構造函數,那麼c++提供自動提供一個默認的構造函數,該默認構造函數是一個沒有參數的構造函數,它僅僅負責創建對象而不做任何賦值操作。  

原创 返回值爲對象的函數

當成員函數或獨立的函數返回對象時,有幾種返回方式可供選擇。可以返回指向對象的引用、指向對象的const引用或const對象。 1、返回指向const對象的引用 函數返回傳遞給它的對象: Vector Max(const Vecto

原创 C++作用域爲類的常量

在類中定義的名稱(函數或數據成員)的作用域都是整個類,作用域爲整個類的名稱只在該類中是已知的,在類外是不可知的。 符號常量的作用域爲類很有用,創建一個由所有對象共享的常量是個不錯的主意。 因爲聲明類只是描述了對象的形式,並沒有創建

原创 關於運算符重載的問題

在設計類的時候,經常用到運算符的重載。運算符 operate<< 重載容易出問題。 常見的錯誤: //vevtor.h #include <iostream> class vector{ private: doubl

原创 四元數的基本運算

一、四元數的定義 四元數是由複數擴展而來: a+bi⟹ω+xi+yj+zk 四元數表示爲(齊次形式): q=(ω,x,y,z) 或者(標量/向量形式): q=(ω,v→) 其中: i2=j2=k2=ijk=−1 ij=k,jk=