首页 > 其他分享 >栈的基本介绍

栈的基本介绍

时间:2023-03-23 18:56:37浏览次数:29  
标签:基本 删除 一端 介绍 插入 地址 寄存器 允许

1、栈的定义

:是一种运算受限的线性表,只允许其在一端进行插入和删除操作。

栈顶:指栈允许进行插入和删除的一端。

栈底:不允许进行插入和删除的一端。

空栈:栈中元素为零。

栈具有先进后出,后进先出的特点,简称为LIFO结构(Last in first out)

(图片来自维基百科)

注意:程序的栈是从进程地址空间的高地址向低地址增长的

2、寄存器

32 位和 64 位程序的简单区别

  • x86
    • 函数参数函数返回地址的上方
  • x64
    • System V AMD64 ABI (Linux、FreeBSD、macOS 等采用) 中前六个整型或指针参数依次保存在 RDI, RSI, RDX, RCX, R8 和 R9 寄存器中,如果还有更多的参数的话才会保存在栈上。
    • 内存地址不能大于 0x00007FFFFFFFFFFF,6 个字节长度,否则会抛出异常。

标签:基本,删除,一端,介绍,插入,地址,寄存器,允许
From: https://www.cnblogs.com/pengui-n3321/p/17248515.html

相关文章

  • 【0基础学爬虫】爬虫基础之代理的基本使用
    大数据时代,各行各业对数据采集的需求日益增多,网络爬虫的运用也更为广泛,越来越多的人开始学习网络爬虫这项技术,K哥爬虫此前已经推出不少爬虫进阶、逆向相关文章,为实现从易......
  • 软件开发需要编程作为最基本的基础
    软件开发需要编程作为最基本的基础,软件开发更是一门艺术,编程也是一门手艺,那么小编今天就来说一说我的个人技巧还有经验.软件开发1.作为一个软件的开发技术,我们要言出必行......
  • Qt Qt-Advanced-Docking-System介绍及使用教程
    一.概述1.控件描述QT自带的Dock布局管理大家都用过,中规中矩,但是满足不了现在ui强大的人机交互需求。而Qt-Advanced-Docking-System在Dock的基础上进一步完善功能,具有......
  • 系统间通信方式之 RPC的基本概念
    1、概述经过了详细的信息格式、网络IO模型的讲解,并且通过JAVARMI的讲解进行了预热。从这篇文章开始我们将进入这个系列博文的另一个重点知识体系的讲解:RPC。在......
  • linux基本操作
    删除相同的行并且显示相同行出现的次数uniq-c排序sort:-n以数值排序防止出现1<10这种按字符比较的情况-t指定排序的分隔符-k指定按照第几列进行排序......
  • LevelDb-基本数据结构
    目录SliceArenaskiplist跳表本质时空复杂度插入,删除数据(如何维护索引)极端情况分析:不维护索引极端情况分析:每次插入都维护插入效率和查找效率取舍删除对比红黑树的优势leve......
  • webpack的基本使用(一)
    学习目录什么是webpack1、webpack是一个工具,用来把前端工程化的。2、它提供了友好的前端模块化开发支持,以及代码压缩混淆(能让文件体积更小)、处理浏览器端J......
  • ProtoBuf的介绍以及在Java中使用protobuf将对象进行序列化与反序列化
    场景ProtoBuf简介protocolbuffers是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。ProtocolBuffers是一种灵活,高效,自动化机......
  • Fetch 基本操作 Get Post Delete Put
    //删除请求asyncfunctionDeleteModel(model:Customer){leturl=`http://localhost:57679/api/Customers/${model.id}`awaitfetch(url,{method:'dele......
  • AMBA总线基本知识
    AMBA:AdvancedMicrocontrollerBusArchitecture,高级微控制器总线架构,是ARM提出的一种片上高速总线架构,包括AHB、APB、AXIAHB:AdvancedHigh-performanceBus,高级高......