Qual é a principal diferença entre ler e carregar e escrever e armazenar?
Eu sei que é uma pergunta muito básica, mas de alguma forma não consigo entender.
Responder1
read
geralmente está associado à leitura de dados de um armazenamento permanente (HDD, pendrive etc.).
load
por outro lado écarregandodados que você leu anteriormente da RAM em um registro/acumulador da CPU (comando Assembly lda
).
O mesmo vale para write
, o que significaescritadados para um armazenamento permanente. E store
quallojasvalores de um registrador/acumulador para uma variável na RAM para salvar seu valor.
Responder2
Qual é a principal diferença entre ler e carregar e escrever e armazenar?
Uma resposta é complicada porque essas palavras podem ser usadas como jargão ou de maneira convencional em um documento técnico. Mesmo como jargão, os significados desses verbos podem depender do contexto de seu uso.
Um conceito chave é que a direção das transferências de dados dentro de um computador é (quase) sempre relativa à CPU. Umentradaé uma transferência de dados direcionada à CPU. Umsaídaé uma transferência de dados direcionada para fora da CPU.
As diferenças delercontracarregareescrevercontralojarelacionam-se principalmente com o objeto da ação. O objeto de umleré a fonte da transferência de dados (por exemplo, vocêler(da) memória ouler(de) um registro de dispositivo oulerum livro). "Lerna memória" é uma gramática/semântica estranha. O objeto de umcarregaré o destino da transferência de dados (por exemplo, vocêcarregarum registro oucarregar(na) memória oucarregarum carrinho). Amboslerecarregarpodem ser operações de entrada, maslerconcentra-se na fonte dessa entrada, enquantocarregarconcentra-se no destino dessa transferência.
Da mesma forma, o objeto de umescreveré o destino da transferência de dados (por exemplo, vocêescrever(para) memória ouescrever(para) um registro de dispositivo). "Escreverda memória" não faz sentido. O objeto de umlojaé a fonte da transferência de dados (por exemplo, vocêlojaum registro). Ambosescreverelojapodem ser operações de saída, masescreverconcentra-se no destino dessa produção, enquantolojaconcentra-se na fonte dessa transferência.
Claro que o objeto dos verbosler/carregar/escrever/lojatambém podem ser os próprios dados, por exemploleravariávelda RAM oucarregaraprograma na memória. Esta construção se aplica a todos os quatro verbos, portanto não há diferença.
Outro conceito é o de “destruição”. Meu primeiro professor de programação me ensinou que "leituras não são destrutivas e gravações são destrutivas". Ele estava se referindo à leitura (de) e gravação (para) variáveis do programa (na memória). A leitura de uma variável deixa seu valor intacto. A gravação em uma variável destrói seu valor anterior.
Lerareialojas são normalmente não destrutivos; o conteúdo da fonte não é modificado. No entanto, existem computadores que possuem registros que são limpos quando lidos/armazenados e locais de memória que aumentam (ou diminuem) o conteúdo quando lidos. Carregarareiaescrevers, para fazerem sentido, têm que ser destrutivos; espera-se que os dados transferidos substituam o conteúdo anterior no destino.