摘要:汇编语言学习结业,并制作了PDF格式的学习笔记以及习题答案书籍,提供下载下载地址:点击下载
阅读全文
随笔分类 - 汇编语言学习笔记
摘要:1 assume cs:code 2 code segment 3 start: 4 mov bx,0b800h 5 mov es,bx 6 mov bx,20*2 7 ;年开始 8 mov al,9 9 out 70h,al10 in al,71h11 call zh12 call xg13 ;年结束14 15 16 ;月开始17 mov al,818 out 70h,al19 in al,71h20 call zh21 call xg22 ;月结...
阅读全文
摘要:1 程序: 2 assume cs:code 3 code segment 4 start: 5 mov ax,0b800h 6 mov es,ax 7 mov di,160*12+16*2 8 mov bx,offset s-offset se 9 mov cx,8010 s:11 mov byte ptr es:[di],'!'12 add di,213 int 7ch14 se:15 nop16 mov ax,4c00h17 int 21h18 code ends19 end ...
阅读全文
摘要:1 程序: 2 assume cs:code 3 data segment 4 db "welcome to masm!",0 5 data ends 6 7 code segment 8 start: 9 mov dh,1010 mov dl,1011 mov cl,212 mov ax,data13 mov ds,ax14 mov si,015 int 7ch16 mov ax,4c00h17 int 21h18 code ends19 end start20 21 7C中断例程:22 ...
阅读全文
摘要:(1)最大转移的范围为FFFFH,可以转移的范围是 -32768~32767(2)jmp near ptr s是近转移(-32768-32767)near: push bp mov bp,sp add [bp+2],bx pop bpiret(3)(应用列举)assume cs:codedata segment db 'conversation',0data endscode segmentstart: mov ax,data mov ds,ax mov si,0 mov ax,0b800h mov es,ax mov di,12*160s: cmp byte ptr [si]
阅读全文
摘要:1、中断信息可以来自CPU的内部和外部2、CPU在收到中断请求过后,取到中断类型码过后,从中断向量表中找到中断类型码相对应的中断处理程序入口地址,并设置CS和IP,这个步骤称为中断过程3、iret指令功能的汇编描述pop IPPOP CSPOPf4、中断程序的入口地址可以称为中断向量,而中断向量表就是所有程序的中断向量集成。 中断向量表的地址为:0000:0000-0000:03FF,共1024个字节,高地址存放段地址,低地址存放低偏移地址。 CPU在取得中断类型码过后在中断向量表中寻址中断向量的段地址和偏移地址(段地址=中断类型码*4+2,偏移地址=中断类型码*4)5、debug中的T命..
阅读全文
摘要:1 assume cs:code 2 code segment 3 start: 4 mov ax,cs 5 mov ds,ax 6 mov si,offset do0 7 8 mov ax,0 9 mov es,ax10 mov di,200h11 12 mov cx,offset do0end-offset do013 cld14 rep movsb15 16 mov ax,017 mov ds,ax18 mov word ptr ds:[0],200H19 ...
阅读全文
摘要:1 assume cs:codesg 2 3 datasg segment 4 db "Beginner's All-purpose Symbolic Instruction Code.",0 5 datasg ends 6 7 codesg segment 8 begin: 9 mov ax,datasg10 mov ds,ax11 mov si,012 call letterc13 14 mov ax,4c00h15 int 21h16 17 letterc:18 push cx19 push s...
阅读全文
摘要:assume cs:code,ds:data,ss:stackdata segment db 10 dup (0)data endsstack segment dw 16 dup (0)stack endscode segmentstart: mov ax,12666 mov bx,data mov ds,bx mov bx,stack mov ss,bx mov si,0 call dtoc mov dh,8 mov dl,3 mov cl,2 call show_str ...
阅读全文
摘要:assume cs:code,ds:data,ss:stackdata segment db 'welcome to masm!',0data endsstack segment dw 16 dup (0)stack endscode segmentkaishi: mov ax,data mov ds,ax mov ax,stack mov ss,ax mov sp,20H mov dh,8 mov dl,3 mov cl,2 mov si,0 call show_str mov ax,4c...
阅读全文
摘要:1 assume cs:codesg 2 3 codesg segment 4 db 'welcome to masm!' 5 6 kk: 7 mov ax,0B800H 8 mov ds,ax 9 mov bx,780H10 mov di,8011 mov si,012 mov cx,313 s1w:push cx14 mov cx,1615 s1n:16 mov al,...
阅读全文
摘要:assume cs:code,ds:data,es:tabledata segment db '1975','1976','1977','1978','1979','1980','1981','1982','1983' db '1984','1985','1986','1987','1988','1989','1990','1991&
阅读全文
摘要:(2)assume cs:codesg,ss:stacksg,ds:datasgstacksg segment dw 0,0,0,0,0,0,0,0stacksg endsdatasg segment db '1.display.......' db '2.brows.........' db '3.replace.......' db '4.modify........'datasg endscodesg segmentstart: mov ax,stacksg mov ss,ax mov sp,10H mov ax,d...
阅读全文
摘要:实验5(5)assume cs:codea segment db 1,2,3,4,5,6,7,8a endsb segment db 1,2,3,4,5,6,7,8b endsd segment db 0,0,0,0,0,0,0,0d endscode segmentstart: mov ax,a mov ds,ax mov bx,0 mov cx,8s1: mov ax,b mov es,ax mov ax,0 mov al,[bx] add al,es:[bx] mov dx,d ...
阅读全文
摘要:实验5(2)assume cs:code,ds:data,ss:stackdata segment dw 0123h,0456hdata endsstack segment dw 0,0stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds,ax push ds:[0] push ds:[2] pop ds:[2] pop ds:[0] mov ax,4c00h int ...
阅读全文
摘要:实验五(1)assume cs:code,ds:data,ss:stackdata segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hdata endsstack segment dw 0,0,0,0,0,0,0,0stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds,ax push ds:[0] push ds:[2] pop ds:[2] pop ds:[0] mov ax,4c00h int 21hcode ends
阅读全文

浙公网安备 33010602011771号