中山大学操作系统 lab week 2

操作系统实验报告1

一、实验内容

  1. 熟悉 Linux 下 x86 汇编语言编程环境

  2. 验证实验 Blum’s Book: Sample programs in Chapter 04, 05 (Moving Data)

二、实验环境

Ubuntu 18.04(64位)

三、实验过程

1、Sample programs in Chapter 04

CPUID指令是一条汇编语言指令,它是请求处理器的特定信息并且把信息返回到特定寄存器中的低级指令。在该范例程序中,指令从处理器获得简单的厂商ID字符器。

1)cpuid.s

在终端中输入命令行:

 $ as -o cpuid.o cpuid.s
 $ ld -o cpuid cpuid.o
 $ ./cpuid

输出结果:

 

2)cpuid2.s

  1. 用as和ld命令编译链接

在cpuid2.s程序中,它调用了C库中的函数,因此需要将C库文件连接到程序目标代码。在Linux系统上,将C函数连接到汇编语言程序有两种方法。第一种方法为静态链接(static linking),它把函数目标代码直接连接到应用程序的可执行程序文件中,容易造成内存浪费。第二种方法是动态链接(dynamic linking),在程序运行时由操作系统调用动态链接库,并且多个程序可以共

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值