Assembly Language Reference Answer

Source: Internet
Author: User

First chapter Detection point 1.11) (8KB = 8 * 1024x768 = 2^13) 2) 0 10233) 8*1024 (1 byte = 8 bit, computer in bytes) 4) 1024^3 1024^2 1024 5) 2^6 1 2^4 2^2 (KB = 2^10 Mb = 2^20 Gb = 2^30) 6) 1 1 2 2 47) 512 256 (8086 Register is a 16-bit register, can read two bytes at a time, 80386 is 32-bit register) 8) binary
Chapter II Detection point 2.11) AX = F4a3hax = 31a3hax = 3123hAX = 6246hBX = 826ChCX = 6246hAX = 826ChAX = 04d8hax = 0482hAX = 6c82hax = d882ha X = D888hax = D810hax = 6246h2) mov ax,2add ax,axadd ax,axadd ax,ax Detection point 2.21) 00010h 1000fh    (0001h+0000h 0001h+ffffh) 2) 100 1h 2000h    (the range of offset address is 0000-ffff, memory unit = Segment Address *16+ offset address, when the offset address is minimum, the segment address is maximum, the offset address is maximum, the segment address is the smallest) detection point 2.34 modification IP, the last IP is 0
Chapter III Detection Point 3.11) mov Ax,1mov ds,axmov ax,[1000] ax = 2662hmov bx,[1001] bx = E626hmov ax,bx       ax = E626hmov ax,[0000] Ax = 266 2hmov bx,[0002] bx = d6e6hadd ax,bx        ax = fd48hadd ax,[0004]  ax = 2c14hmov ax,0         ax = 0000hmov al,[0002]  ax = 00e6h mov bx,0         bx = 0000hmov bl,[000c]  bx = 0026hadd al,bl          AX = 000ch2) CS = 2000h,ip = 0,ds = 1000hmov ax,66  22h  ax = 6622hjmp 0ff0:0100h CS = 0ff0 IP = 0100hmov ax,2000h  ax = 2000hmov Ds,ax       ds = 2000hmov ax,[0008] AX = C389hmov ax,[0002] Ax = Ea66hmov ax,6622h  ax = 6622h data and program expression there is no difference, only with the location of the storage, the existence of data segment is the data, there is a program in the program segment is the detection point 3.21) mov ax, 2000hmov Ss,axmov sp,10h2) mov Ax,1000hmov Ss,axmov sp,0
Sixth detection point 6.11) mov cs:[bx],ax2) cs26 or 1ahpop CS:[BX]
Nineth detection point 9.11) DB 8 dup (0) 2) offset startcs3) CS = 0006h IP = 00BE detection point 9.2mov cl,[bx]mov ch,0jcxz okinc bx detection point 9.3inc CX  (because loo P S is performed by comparing CX subtraction with 0 first)
Tenth detection Point 10.110000000 detection point 10.2ax = 3 detection Point 10.3ax = 1006 detection Point 10.4ax = 9 (call ax will be ippush to the stack, that is, push 3) detection point 10.51) ax = 0001 bx = 0000
11th Inspection Point 11.11 1 01 1 0 1 1 01 1 00 0 00 1 00 1 0 Detection Point 11.20 0 0 1 10 0 0 1 10 0 1 0 00 0 1 0 01 1 0 1 1
1 1 0) 1 1
1 0 0) 0 0
1 0 0) 0 0
0 1 1) 0 1
Detection Point 11.3
1)
JNA S0
JNA S0
2)
JB S0
JB S0
Detection Point 11.4
Ax = 0871h
Detection point 12.11) 039d:00162) 0000:[4n]0000:[4n+2]
Detection point 13.1assume cs:code,ds:data    data segment        db ' conversation ', 0    data ends    code segmentstart:    mov Ax,cs    mov ds,ax    mov si,offset show    mov ax,0    mov es,ax    mov di,200h    mov cx,offset Showend-offset Show    CLD    rep movsb    mov ax,0    mov es,ax    mov word ptr es:[7ch*4],200h    mov Word ptr es:[7ch*4+2],0        mov ax,data    mov ds,ax    mov si,0    mov ax,0b800h    mov es,ax    mov di,12 *160    S:    cmp byte ptr [si],0    je ok    mov al,[si]    mov es:[di],al    mov al,2    mov es:[di+1] , Al    inc si    add di,2    mov bx,offset s-offset ok    int 7ch    OK:    mov ax,4c00h    int 21hshow:    push BP    mov bp,sp    add [bp+2],bx    pop bp    iretshowend:nop    code ends    End Start detection point 13.21) error, unable to write program to BIOS 2) error, 19h interrupt before operating system, and DOS controlled by operating system after operating system
Detection point 14.11) mov al,2out 70h,alin al,71h2) mov al,0out 71h,almov al,2in 70h,al detection Point 14.2 without considering overflow case: mov ax,__mov BX,AXSHL Bx,1mov CL,3SHL Ax,cladd AX,BX
15th Detection Point 15.11) Pushfcall DWORD ptr ds:[0]2) set a new INT9 interrupt entry address in the interrupt vector table without interruption, that is, Climov word ptr es:[9*4],offset Int9mov word PTR Es:[9*4+2],cssti restores the source address of the interrupt vector table Int9 in the same vein: Clipush ds:[0]pop es:[9*4]push ds:[2]pop es:[9*4+2]sti
16th detection Point 16.1A[SI]BB1 detection point 16.2mov Ax,datamov es,ax
17th detection Point 17.1IF = 1 DI (disable interupt) if = 0 EI (enable interupt) when the execution of the int16 interrupt is read out from the buffer, if the buffer is empty, then int16 should be able to respond to INT9 interrupts, So if it is not necessarily 1

Assembly Language Reference Answer

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.