彙編基礎學習14

2021-05-02 03:14:07 字數 943 閱讀 4696

文章** http://www.mcany.cn/article/289.htm

博主 沒落的殘陽

這節來學習下not求反指令和xor異或指令。這兩個指令以後用的也很廣泛,而且很多人都對這

個不是很了解。

not指令就是取反,那麼16進製取反我在上上節課在講解求數值的補碼的時候已經說過了。。

16進製制數值取反是用15-相應16進製制數值相應位。舉個例子

00403020h  取反  = ffbfcfdfh

15-0=f

15-0=f

15-4=b

15-0=f

15-3=c

15-0=f

15-2=d

15-0=f

就是用15減去相應的16進製制數值的相應位,大家是否想起來在上上節課時候我講解的取補碼的那節課程,取

補碼是取反後+1。

那麼not 指令也就是相應的取反。

假如此時eax = 00403020h

執行not eax後

eax = ffbfcfdfh

一般的格式 not 暫存器/記憶體單元

很簡單吧。

那麼我們來看下xor 異或語句,在上節免殺課程上,講解的「巧用演算法加密特徵碼」,就是簡單

的利用了異或演算法。。

xor 就是相同為0, 相異為 1。

舉例 al = 00001010b

執行 xor al, 11111111b後

al = 11110101b

那麼此時我們在將al的結果在同11111111b進行一次異或就可以取得之前的值。

al = 11110101b

xor al,11111111b

執行後

al   = 00001010b

因為異或指令的這種特性,所以使有時候我們可以用它來加密一些資訊。

linux基礎學習14

14.linux中裝置的訪問 1.裝置訪問 1.裝置識別 dev xdxn 硬碟裝置 dev sda1 dev cdrom 光碟機 dev mapper 虛擬裝置 2.裝置的使用 fdisk l 檢視真實存在的裝置 cat proc partitions 系統能夠識別的裝置 blkid 系統能夠掛載...

彙編基礎學習5

文章 http www.mcany.cn article 280.htm 博主 沒落的殘陽 今天我給大家來講解下我們記憶體中資料的儲存以及訪問。這節課的基礎也是非常重要的。因為80386的資料位址線是32根,所以它一次可以傳送資料是4個位元組。所以我們記憶體單元是按照4個位元組來對齊的。用高階語言的...

彙編基礎學習7

博主 沒落的殘陽 這節來講解一下棧的延伸,堆疊 算是把昨天的整個理論基礎概念,給大家講解下。執行時棧 runtime stack 我們通常稱為 堆疊 這是由我們cpu硬體直接支援的,也是實現過程的呼叫和過程返回機制的基本組成部分。不知道大家是否知道rtl是什麼意思。如果學過程式的人都應該知道這個就是...