彙編簡單的問題,簡單的彙編問題

2022-11-27 08:35:20 字數 2559 閱讀 2854

1樓:匿名使用者

ob4h對應的二進位制是10110100,第一位是符號位,為1。

如果看做無符號就是10110100,換算為十進位制就是180,如果看做是有符號則是-0110100,換算為十進位制就是-76了。

11h對應的二進位制是10001,補全8位就是00010001,第一位是符號位,為0。

如果看做無符號就是00010001,換算為十進位制就是17,如果看做是有符號則是+0010001,換算為十進位制就是17了。

可見,由於首位為0,所以無論有符號和無符號,都是一樣的。

如果首位為1,則有符號時為負數,無符號時為整數,結果不一樣。

2樓:做而論道

帶符號數,是用補碼錶示的。

樓主去看看補碼的有關知識,就沒有這些問題了。

參考

3樓:

0b4h=1|011,0100b

011h=0|001,0001b

注「|」之前是符號位,「,」是四位分隔符。

再看不明白,補習原始碼,補碼的知識。

簡單的彙編問題

4樓:匿名使用者

19行:「mov ax,data ;程式從start開始」問題在於放入ax暫存器的不應是一個段,而應該是段的地址,所以在「date」前一改加上「offset」操作符才對,應改為:「mov ax, offset data」

還有30行:「end start」這是個錯誤的語法,應去掉「 start」

所以整個程式改為:

title ***hello,world***

;定義資料段

data segment

msg db 'hello,world!','$'

data ends

dispstr macro

mov ah,09h ;9號功能呼叫:顯示字串

int 21h ;完成輸出顯示

endm

;定義**段

code segment

assume cs:code ;規定cs的內容

assume ds:data ;規定ds的內容

start:

mov ax, offset data ;程式從start開始

mov ds,ax ;ds置初值,data的段地址

lea dx,msg ;得到字串"hello world!"的偏移地址

dispstr

dispstr

dispstr

exit: mov ah,4ch ;4c號功能呼叫:終止當前程式並返**用程式

int 21h ;返回dos

code ends ;**段結尾

end ;結束彙編

這樣至少沒有編譯錯誤了!但是連線好像還是有錯!你自己改了!

組合語言簡單問題,**等!!!很簡單的入門問題額 10

5樓:聚發稿網

首先就樓主的問題來說,樓主大可以放心就是,目前世界上還不存在這種可以監控畫面而又可以植入人體的裝置存在.但我在樓主的問題描述過程中覺得樓主的那個朋友似乎需要樓主著重疏導,我覺得樓主的朋友可能有輕微臆想症狀

幾個簡單的組合語言問題

6樓:匿名使用者

1.判斷下列彙編語句的正確性並說明原因

mov [ax],bh ;錯,ax不能加方括號來訪問地址

mov [sp],ax ;錯,sp不能加方括號

out 10h,cl ;錯,out指令中源運算元只能是ax或al

cmp 36h,al ;錯,cmp指令中目的運算元不能為立即數

2.標號作符號地址使用,出現在運算元域時,語句jmp begin 中符號begin表示的是目標地址;而在語句loop begin中卻是同時表示目標地址和偏移地址,它們之間有什麼區別嗎?為什麼要有這樣的區別呢?

jmp指令可以訪問記憶體的任何空間,loop則只能訪問—128~+127之間的記憶體空間,所以是相對位移。

3。段邊界定義segment.....end和過程定義proc...endp和模組定義name....end有什麼區別?謝謝問題補充:

這個要去了解段、過程和模組的區別。

間接定址只能用bx,dx,si,di嗎?out和in的操作只能用ax,dx嗎?

間接定址只能用bx,dx,si,di。out和in的操作中只能用ax,al,dx和0~255的立即數埠地址

7樓:

1.沒對的。【】裡面的應該是bx,dx,di,si。out不應該用cl暫存器。cmp al,36h

8樓:匿名使用者

裡面的應該是bx,dx,di,si。out不應該用cl暫存器。cmp al,36h

彙編簡單一問

嚴格的說,計算機內的資料應該大多數都是二進位制的。即使是039h也是二進位制的。你可以查詢一下bcd碼,壓縮的bcd和非壓縮的bcd。這樣可能能幫助你理解。反正就是書寫的可能也有毛病,你的理解也比較初步,很難一下子講明白。鍵盤接收的是acsii碼對應的值,比如你從鍵盤輸入9,實際電腦接收的是39h。...

彙編基礎問題

1.這個沒有什麼通知不通知的,cpu就是一個能夠自動提取記憶體中的指令並執行指令的東西,cpu是電腦的大腦,cpu是命令其他硬體的 2.cpu的t指令是利用cpu的陷阱中斷來實現的,這個中斷是這樣的 cpu每執行完一條指令,就觸發一次這個中斷 r指令應該也類似,不過我不敢確定 使cpu進入陷阱中斷的...

彙編問題,求人指點

在8086中,如果不指明某一個段的定位型別,則編譯器預設為para。也就是說,段的起始地址位於可用的第一個節的邊界處 每個節為16位元組 舉個例子,假設有如下 name1 segment db 0 name1 ends name2 segment db 0,1 name2 ends 常規上來說,na...