1. 程式人生 > >組合語言 第三版 王爽 實驗6 更改大寫字母

組合語言 第三版 王爽 實驗6 更改大寫字母

題目:
將如圖所示記憶體地址處的小寫字母改為大寫。

注意:si的值每次二重迴圈之前需要重置。

程式碼:
assume cs:code,ds:data,ss:stack
data segment
db '1. display      '
db '2. brows        '
db '3. replace      '
db '4. modify       '
data ends
code segment


stack segment
dw 0,0,0,0,0,0,0,0
stack ends


start:
	mov ax,data
	mov ds,ax
	mov bx,0
	
	mov ax,stack
	mov ss,ax
	mov sp,16


	mov cx,4
	s:push cx


	 mov si,0
	 mov cx,4
	 s1:
	  mov al,[bx+3+si]
	  and al,11011111b
	  mov [bx+3+si],al
	  inc si
	 loop s1
	 
	add bx,16
	pop cx
	loop s
	
	mov ax,4c00h
	int 21h
code ends
end start

結果:






相關推薦

組合語言 實驗6 更改大寫字母

題目: 將如圖所示記憶體地址處的小寫字母改為大寫。 注意:si的值每次二重迴圈之前需要重置。 程式碼:assume cs:code,ds:data,ss:stack data segment db '

組合語言 實驗9 根據材料程式設計

題目:      注意事項: 1.windows 7下執行可能看不到效果,我這裡是這樣,安裝xp解決。 2.橫向比較,多篇教程綜合看。 程式碼: assume cs:code,ds:data,ss

組合語言 實驗12 編寫0號終端的處理程式

題目: 編寫0號中斷的處理程式,使得在除法溢位發生時,在螢幕中間顯示字串“divide error!”,然後返回dos 程式碼: assume cs:code code segment start:

組合語言 實驗10-2 編寫子程式 之 解決除法溢位問題 divdw

題目: 分析: 1.也就是把dw資料拆成兩個db資料和db相除。 2.注意引數的傳入和傳出。 程式碼: assume cs:code,ss:stack stack segment db 16 dup

組合語言 檢測點2.3

原文 檢測點2.3 (1)下面的3條指令執行後、CPU幾次修改IP?都是在什麼時候?最後IP中的值是多少? MOV AX,BX SUB AX,BX JMP AX 假設 CS=1230H IP=0001H 第一次 CS:IP指向12301H記憶體處,讀取指令MOV AX,BX

組合語言學習歷程——實驗16

編寫包含多個功能子程式的中斷例程 要求: 安裝一個新的int 7ch中斷例程,為顯示輸出提供如下功能: (1)、清屏; (2)、設定前景色; (3)、設定背景色; (4)、向上滾動一行; 入口引數說明如下。 (1)、用ah暫存器傳遞功能號:0表示

-組合語言實驗7

;1. 資料組織 data 中資料當成陣列,table中資料當成結構體。 ;2. data 用si來定址, table 用 bx , di, idata來定址 assume cs:codesg , ss:stacksg data segment    db '1975','1976','1977','1978

組合語言()實驗10-1,2

1.顯示字串 子程式描述: 名稱:show_str 功能:在指定的位置,用指定的顏色,顯示一個用0結束的字串。 引數:(dh)=行號(取值範圍0~24),(dl)=列號(取值範圍0~79), (

1014 C語言程序設計教程()課後習題6.4

content += 教程 print ons ont c語言程序設計 lld cnblogs 題目描述 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一個數字。 輸入 n 輸出 和 樣例輸入 5 樣例輸出 153 1 #include "stdio.h"

1013: C語言程序設計教程()課後習題6.3

其中a是一個數字 blog += color turn sam c語言程序 [] c語言 題目描述 求Sn=a+aa+aaa+…+aa…aaa(有n個a)之值,其中a是一個數字。 例如:2+22+222+2222+22222(n=5),n由鍵盤輸入。 輸入 a 輸出 和 樣

1012 - C語言程式設計教程()課後習題6.2

1012 - C語言程式設計教程(第三版)課後習題6.2 時間限制:1秒 記憶體限制:128兆 題目描述 輸入一行字元,分別統計出其中英文字母、空格、數字和其他字元的個數。 輸入 一行字元 輸出 統計值 樣例輸入 aklsjflj123 sadf918u324 asdf91u32oa

1011 - C語言程式設計教程()課後習題6.1

1011 - C語言程式設計教程(第三版)課後習題6.1 時間限制:1秒 記憶體限制:128兆 題目描述 輸入兩個正整數m和n,求其最大公約數和最小公倍數。 輸入 兩個整數 輸出 最大公約數,最小公倍數 樣例輸入 5 7 樣例輸出 1 35 最大公約數求法我是用的是輾轉相除法進行

1014 - C語言程式設計教程()課後習題6.4

1014 - C語言程式設計教程(第三版)課後習題6.4 時間限制:1秒 記憶體限制:128兆 題目描述 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一個數字。 輸入 n 輸出 和 樣例輸入 5 樣例輸出 153 題求一個數的階乘和,本身並不是一個難想的思路,

1015 - C語言程式設計教程()課後習題6.5

1015 - C語言程式設計教程(第三版)課後習題6.5 時間限制:1秒 記憶體限制:128兆 題目描述 求以下三數的和,保留2位小數 1~a之和 1~b的平方和 1~c的倒數和 輸入 a b c 輸出 1+2+…+a + 1 ^ 2 + 2 ^ 2+…+b ^ 2 + 1/1+1/2+…+

1013 - C語言程式設計教程()課後習題6.3

1013 - C語言程式設計教程(第三版)課後習題6.3 時間限制:1秒 記憶體限制:128兆 題目描述 求Sn=2+22+222+…+22…222(有n個2)之值,其中a是一個數字。 例如:2+22+222+2222+22222(n=5),n由鍵盤輸入。 輸入 n 輸出 Sn 樣例輸入

Effective Java 讀書筆記——條款6:避免建立不必要的物件

通常來講,重用一個物件比建立一個功能相同的物件更加合適。重用速度更快,並且更接近現代的程式碼風格。如果物件是不可變的(條款 17),它總是可以被重用。 考慮一個極端的例子: String s = new String("bikini"); // DON'T DO THIS! 這

深入理解計算機系統(原書)練習題2.6 感性認識整型和浮點型別(同一個數)在機器中表示

/** * 練習題2.6 感性認識整型和浮點型別(同一個數)在機器中表示 * 由於我的機器是小端表示,將列印結果還原真實數並用二進位制表示 * 41913500 -->(還原) 0x00359141 -->(二進位制) 0000 0000 0011 0101

C語言程式設計教程()課後習題6.3

題目描述 求Sn=2+22+222+…+22…222(有n個2)之值,其中a是一個數字。 例如:2+22+222+2222+22222(n=5),n由鍵盤輸入。 輸入 n 輸出 Sn 樣例輸入 5 樣例輸出 24690 #include <iostr

C語言程式設計教程()課後習題6.5

題目描述 求以下三數的和,保留2位小數 1~a之和 1~b的平方和 1~c的倒數和 輸入 a b c 輸出 1+2+...+a + 1^2+2^2+...+b^2 + 1/1+1/2+...+1/c 樣例輸入 100 50 10 樣例輸出 47977.93

組合語言】(實驗

實驗二 實驗任務(一) 實驗前要求我們將書本P74的程式段按理論分析,將結果進行填空。之後用Debug,將該程式段寫入記憶體,逐條執行之後, 根據指令執行後的實際執行的結果填空如下。   mov ax,0021   mov  ax , ffff   &n