網(wǎng)站首頁 編程語言 正文
前言
內(nèi)存是CPU與外存進行溝通的橋梁。
在馮·諾依曼計算機結構中,存儲器是計算機的存儲部件,是信息存儲的核心,用來存放程序和數(shù)據(jù)。 存儲器分為內(nèi)存(內(nèi)存儲器、主存儲器)和外存(外存儲器、輔助存儲器)。 CPU能夠直接訪問的存儲器是內(nèi)存。外存用于幫助主存記憶更多的信息,外存內(nèi)的信息必須調(diào)入內(nèi)存后,才能被CPU所使用。因此,內(nèi)存是CPU與外存進行溝通的橋梁。
模擬實現(xiàn)簡單的內(nèi)存函數(shù)
1.memcpy-內(nèi)存拷貝函數(shù)(應該拷貝不重疊的內(nèi)存)
函數(shù)memcpy從source的位置開始向后復制num個字節(jié)的數(shù)據(jù)到destination的內(nèi)存位置。
這個函數(shù)在遇到 '\0' 的時候并不會停下來。
如果source和destination有任何的重疊,復制的結果都是未定義的。
調(diào)試結果
2.memmove-內(nèi)存拷貝函數(shù)(可以拷貝重疊的內(nèi)存)
?和memcpy的差別就是memmove函數(shù)處理的源內(nèi)存塊和目標內(nèi)存塊是可以重疊的。 如果源空間和目標空間出現(xiàn)重疊,就得使用memmove函數(shù)處理。
調(diào)試結果
總結
上述簡單模擬實現(xiàn)了兩個內(nèi)存函數(shù)的使用,相信大家都學會了。如果上述文章有任何問題 ,歡迎大佬們提出質(zhì)疑,我會虛心學習和改正,最重要的是能共同進步,共同成長,學習好編程。
原文鏈接:https://blog.csdn.net/m0_64397675/article/details/122831208
相關推薦
- 2022-06-19 Rainbond使用Dockerfile構建便捷應用運行流程_云其它
- 2022-05-23 MongoDB數(shù)據(jù)庫部署環(huán)境準備及使用介紹_MongoDB
- 2022-05-10 Element-ui 中<template slot-scope=“scope“> 的用法問題以及剖
- 2022-07-09 C#中的WebRequest與WebResponse抽象類、DNS靜態(tài)類、Ping類介紹_C#教程
- 2022-05-26 Flutter自定義年月日倒計時_Android
- 2022-04-27 使用jQuery實現(xiàn)圖片輪播效果_jquery
- 2022-08-21 Python列表去重的幾種方法整理_python
- 2022-05-20 Shell編寫格式和執(zhí)行方式
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支