I see Ethereum (ETH) can store 2256 smart contracts, so is there any description about this for Cardano, i.e. how many contracts can Cardano store?
In Cardano, the smart contractors are submitted as transactions with a validator script. Funds locked in the smart contract are in UTXO with the address as the "Script Address". And based on three parameters called datum, redeemer, and context, the validator script provides the go-ahead for the release of funds.
Based on this setting theoretically, there is no limit to the number of deployable smart contracts since there is no limit on how many transactions can be submitted to the blockchain. The size of Datum, which can carry some bit of data, is yet to be promulgated.
I'm not sure that I fully understand your question. 2^256 what?
To my knowledge, the maximum size of a smart contract on ETH is 24 KB. According to the Cardano Foundation, the maximum transaction metadata size is 16 KB. Since smart contracts are not yet deployed, I'm not sure what the size limitation will be but, it will probably be in this ball park.