汇编网首页登录博客注册
assumechen的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2020-04-08 07:43] 数据结构的定义

#define ListSize 100

typedef int DataType

// 顺序表
typedef struct 
{
    DataType data[ListSize];
    int length;
} SeqList;

// 单链表
typedef struct node 
{
    DataType data;
    struct node *next;
} ListNode;
typedef ListNode *LinkList;
ListNode *p;   // 定义一个指向结点的指针变量
ListList he...
阅读全文 | 评论次数(0) | 浏览次数(390) | 所属类型(The C Program Langua)

[2019-03-31 17:13] 课程设计1

点击查看原图
assume cs:code, ds:data, ss:stack

data segment 
    db '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982'
    db '1983', '1984', '1985', '1986', '1987', '1988', '1989', '1990'
    db '1991', '1992', '1993', '1994', '1995' 
    ; 以上表示21个年份的字符串 0 - 83 
         
    dd 16,22,382,1...
阅读全文 | 评论次数(0) | 浏览次数(349) | 所属类型(汇编作业)

[2013-11-02 09:56] gdb-examine-x命令

Examine memory: x/FMT ADDRESS.
ADDRESS is an expression for the memory address to examine.
FMT is a repeat count followed by a format letter and a size letter.
Format letters are o(octal), x(hex), 
d(decimal), u(unsigned decimal), t(binary),
f(float), a(address), i(instruction), 
c(char) and s...
阅读全文 | 评论次数(0) | 浏览次数(442) | 所属类型(gdb)

[2013-10-31 17:36] 实现打印直方图

题意要求: 把整型数组中的统计的计数信息用直方图的形式打印出来.

要实现打印直方图, 我现在想到的思路如下:
1. 遍历数组, 把值大于0的打印一个符号出来
2. 重复第一步, 一直到数组的值全部等于0为止.

但是到要实现第二步的终止条件,我们可以通过比较来获取得最大的循环次数. 我这里是通过与的方式来实现的, 当数组某个下标的值等于0时,就与上0XFFFF.这样当数组的值全为0时,就可以退出循环了.代码如下:
/*
 * *a: 存储统计信息的数组
 * len: 数组的长度
 * sign: 要打印的符号
 */
void print_histogram(int...
阅读全文 | 评论次数(0) | 浏览次数(445) | 所属类型(The C Program Langua)

[2013-05-21 17:46] 把十六进制字符串转化为数字

问题描述: 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f 以及 A~F。

 步骤:
 1. 先判断字符串的长度是否大于2, 因为十六进制数字字符串以0x或0X开始, 长度肯定大于2
 2. 先判断十六进制的字符串是否为 0x或0x开始, 非法格式则返回-1
 3. 把字符串编码范围在'A'到'F'范围内的转成小写字符
 4. 按公式 n = base^power * bit来计算数值. n:就是十六进制表示的十进制值, base就是基数16, power就是对应的位权, bit...
阅读全文 | 评论次数(0) | 浏览次数(530) | 所属类型(The C Program Langua)

[2013-04-01 16:11] 实验14的实现

assume cs:code
code segment
; 要格式化的字符串
s1: db 32h,30h,0,0,'/',0,0,'/',0,0,' ',0,0,':',0,0,':',0,0,'$'
; CMOS日期部分的参数
s2: db 9,8,7,4,2,0                                
; 要格式化的字符串中变量的偏移地址
s3: db 2,5,8,11,14,17                
start:
        ; 秒:0 2:分 4:时 7:日 8:月 年:9
        ; 以"年/月/日 时:分:秒"的格式
        ; bx,di,si,cx
        mov ax,cs
        mov ds, ax
        mov di, of...
阅读全文 | 评论次数(0) | 浏览次数(533) | 所属类型(汇编作业)

[2013-03-29 23:42] 将word型数据转变为表示十进制数的字符串,字符串以0为结尾

; 名称:dtoc
; 功能:将word型数据转变为表示十进制数的字符串,字符串以0为结尾符
; 参数:(dx)=dword型数据的高16位
;                (ax)=dword型数镜的低16位
;                ds:si指向字符串的首地址
; 返回:无
dtoc:
        PUSH DX
        PUSH BX
        PUSH AX
        PUSH SI
        push cx
        push di
        
        ; 在子程序中使用栈时,要把主程序的栈暂存起来
        ; 在子程序返回前要把栈设置为主程序的栈
        ; 换栈可以用寄存器保存或者用栈来实现
        mov bx,ss
        mov di,sp
        
        MOV dx,...
阅读全文 | 评论次数(0) | 浏览次数(526) | 所属类型(汇编作业)

[2012-07-11 21:18] 实验10:divdw的实现

assume cs:code

code segment
start:
        mov ax,4240H
        mov dx,000FH
        mov cx,0AH
        call divdw
        
        mov ax,4c00H
        int 21H

; 名称: divdw
; 功能: 进行不会溢出的除法运算
; 参数:(ax)=dword型数据的低16位
;        (dx)=dword型数据的高16位
;        (cx)=除数
; 返回        (dx)=结果的高16位,(ax)=结果的低16位
;        (cx)=余数
; 公式: X/N = INT(H/N)*65536 + [REM(H/N)*65...
阅读全文 | 评论次数(3) | 浏览次数(806) | 所属类型(汇编作业)

[2012-07-09 17:23] 实验10:显示字符串

assume cs:code

data segment
        db 'Welcome to masm!',0
data ends

code segment
start:
        mov dh,24
        mov dl,0
        mov cl,2
        mov ax,data
        mov ds,ax
        mov si,0
        call show_str

        mov ax,4c00H
        int 21H

; 名称:show_str
; 功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串
; 参数: (DH)=行号(取值范围为0-24);
;                (DL)=列号(取值范围为...
阅读全文 | 评论次数(2) | 浏览次数(813) | 所属类型(汇编作业)

[2012-06-29 22:49] 检测点9.3

检测点9.3
补全编程,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储在dx中。
assume cs:code
code segment
start:        mov ax,2000H
        mov ds,ax
        mov bx,0
s:        mov cl,[bx]
        mov ch,0
        inc cx         ;补充的指令
        inc bx
        loop s
        
ok:        dec bx
        mov dx,bx
        mov ax,4c00H
        int 21H
code ends
end start...
阅读全文 | 评论次数(2) | 浏览次数(837) | 所属类型(汇编作业)
『 查看更多文章 』