我可以使用汇编语言中的函数随机填充我在文本模式下用字母打印的表吗?

时间:2016-05-14 09:09:27

标签: assembly random

这是我的代码,我不知道是否有一个功能或类似的东西,我可以用来填写表随机字母? (它打印一个表格,在表格的每个索引中都有空格,我可以使用或者用字母替换所有空格或者用空格生成相同的循环但是用随机字母?

IDEAL
MODEL small
STACK 100h
DATASEG
TimesToPrintCol db 7
TimesToPrintRow db 6
TimesToPrintNewRow db 6
TimesToPrintStart db 25
TimesToPrintSpace db 6
NumOfTimesSpace db 9
NumOfTimesCol db 9
NumOfTimesRow db 9

CODESEG

start:
    mov ax, @data
    mov ds, ax
    mov ax, 13h
    int 10h
PrintStart:
    xor cx, cx
    mov cl, [TimesToPrintStart]
    cmp cx, 0
    je NewLine
    sub [TimesToPrintStart], 1
    mov dl,'_'
    mov ah , 2
    int 21h
    jmp PrintStart
NewLine:
    mov dl,10
    mov ah, 2
    int 21h
    mov dl, 13
    mov ah, 2
    int 21h
    xor cx, cx
PrintCol:
    xor cx, cx
    mov cl, [TimesToPrintCol]
    cmp cx, 0
    je PrintLineCol
    sub [TimesToPrintCol], 1
    mov dl,'|'
    mov ah , 2
    int 21h
    jmp PrintRow
PrintSpace:
    xor cx, cx
    mov cl, [TimesToPrintSpace]
    cmp cx, 0
    je PrintLineCol
    sub [TimesToPrintSpace], 1
    mov dl,' '
    mov ah , 2
    int 21h
    jmp PrintNewRow
PrintRow:
    xor cx, cx
    mov cl, [TimesToPrintRow]
    cmp cx, 0
    je PrintLineRow
    sub [TimesToPrintRow], 1
    mov dl,'_'
    mov ah , 2
    int 21h
    jmp PrintSpace
PrintLineCol:
    mov dl,10
    mov ah, 2
    int 21h
    mov dl, 13
    mov ah, 2
    int 21h
    xor cx, cx
    mov cl, [NumOfTimesCol]
    cmp cx, 0
    je PrintLineRow
    sub [NumOfTimesCol], 1
    add [TimesToPrintCol], 7
    add [TimesToPrintRow], 6
    add [TimesToPrintSpace], 6
    jmp PrintCol
PrintNewRow:
    xor cx, cx
    mov cl, [TimesToPrintNewRow]
    cmp cx, 0
    je PrintLineCol
    sub [TimesToPrintNewRow], 1
    mov dl,'_'
    mov ah , 2
    int 21h
    jmp PrintCol
PrintLineRow:
    mov dl,10
    mov ah, 2
    int 21h
    mov dl, 13
    mov ah, 2
    int 21h
    xor cx, cx
    mov cl, [NumOfTimesRow]
    cmp cx, 0
    je exit
    sub [NumOfTimesRow], 1
    add [TimesToPrintCol], 7
    add [TimesToPrintRow], 6
    add [TimesToPrintSpace], 6
    add [TimesToPrintNewRow] , 6
    jmp PrintCol
exit:
    mov ax, 4c00h
    int 21h
END start

0 个答案:

没有答案